Hands-On Workshop: Freescale Audio Solution Framework, Part 2

Size: px
Start display at page:

Download "Hands-On Workshop: Freescale Audio Solution Framework, Part 2"

Transcription

1 Hands-On Workshop: Freescale Audio Solution Framework, Part 2 FTF-SDS-F0131 Justin Lydick Software Architect Jason Martin Software Manager A P R External Use

2 Agenda Introduction of FAS Framework (recap from part 1) Major Software Components and APIs FAS Configuration and Build Overview Build Requirements Source Organization Configuration Program Hands-On Applications FAS comprehensive test application test_app Audio Device Detection and Enumeration Audio Device Browse and Playback External Use 1

3 Freescale Audio Solution Introduction Recap Components and Base APIs External Use 2

4 Freescale Audio Solution: OSA Operating System Abstraction (OSA) Write code once for any OS / platform Bridge the gap between POSIX and non-posix OSes Functional today on MQX, Linux, and some components on bare metal Key APIs Create and schedule tasks / threads Synchronization: mutexes, semaphores, events Messaging Dynamic memory allocation File and directory operations Time and date External Use 3

5 Freescale Audio Solution: Common Libraries Common Libraries Utility libraries, data types, and algorithms for platform use Key APIs Container data types: list, vector, and iterators Logging platform Module setup and enable / disable Level setup (debug, warning, info, error) and enable / disable Destination setup (console, file, memory) String utilities Unicode / UTF-8 <string.h> extensions like strlcpy() External Use 4

6 Freescale Audio Solution: Platform APIs Device Manager Runs as a separate task Manages external devices: USB/SD, Apple, Android, CD, BT, etc Key APIs devicemgr_get_all_device_list() devicemgr_msg_queue_register() External Use 5

7 Freescale Audio Solution: Platform APIs Input Manager Runs as a separate task Manages various types of application inputs: buttons, knobs (quadrature), touch, CAN / network, and input simulation Optional mapping of inputs to platform behaviors: previous / next track, play / pause, volume up / down, etc. Key APIs inputmgr_get_current_device_info() inputmgr_msg_queue_register() External Use 6

8 Freescale Audio Solution: Platform APIs Maestro Audio Framework Largest component of the FAS platform Handles playback and media library browsing of media data from a variety of sources and types Streamer-based handling of input and output sources, as well as media codecs allows easy extensibility for new types Also allows filters to be written for audio data processing Key Components Media Device Abstraction (MediaDev) Browser Player Play Queue Streamer Tuner External Use 7

9 Freescale Audio Solution: Platform APIs Application interacts with Maestro using several components Player Object Playback control of audio from connected device Tuner Object AM/FM tuner playback control Play Queue Object Manages a list of audio tracks on a filesystem device Controls shuffle and repeat modes Browse Object Browse files or entities on a connected device Media Device Object Abstracts externally controlled devices (Apple, Bluetooth, CD, etc) Streamer Reads data from devices, parses and decodes it, and passes output to appropriate output device Creates a pipeline of elements that are built dynamically based on input and output devices as well as the type of data to be processed Abstracted using Streamer Abstraction Layer (SAL) to allow replacement with third-party streamers like gstreamer on Linux External Use 8

10 Freescale Audio Solution: Platform APIs Maestro Media Device mediadev_create() Maestro Browser browse_create() browse_enter_folder() / browse_exit_folder() browse_get_entries() Accepts limits and offset parameters Uses browse session context to determine location browse_get_track_info() / browse_get_album_art() External Use 9

11 Freescale Audio Solution: Platform APIs Maestro Player player_create() player_set_track() player_control() Stop, Play, Pause, Next, Previous, Fast Forward, Rewind, and others External Use 10

12 Freescale Audio Solution Configuration and Build External Use 11

13 Platform Build Requirements Linux or Windows host environment Currently requiring 32-bit Ubuntu (server or desktop) >= Cygwin under Windows also works GCC cross-compiler for ARM target Building successfully with ARM, Mentor, and Linaro GCC cross-compiler can generate Linux or MQX libraries and apps Libc Should come with the compiler Using GNU libc on Linux and newlib with MQX GNU binutils and make External Use 12

14 Debugging and Boot Options Lauterbach with Trace32 Preferred debugging method Other JTAG solution GDB using Segger SD card boot U-boot bootloader can boot an application image on card or tftp-boot remote image (useful for rapid development and debugging) External Use 13

15 Release Package Source Organization mydir ----fsl_fas ->source code fas ->software platform infrastructure ->build infrastructure tools ->flash programmer image scripts ->debugger & configuration tool os ->OS kernel and device drivers apps ->sample applications ----doc ->documentation ----bootloader ->bootloader (U-Boot) ----build ->pre-built default image External Use 14

16 Infrastructure Top-level repository used for building and configuring the platform Build infrastructure all done using GNU make Flexible: can work using command-line or integrated into GUI tools like Eclipse Makefile supports the following targets: (no args): build all repositories and generate test_app command-line media player build : same as no arguments target to build platform config : starts fasconfig configuration program clean : removes all object files, libs, and binaries across the platform configclean : wipe out user-created configuration and restore to default External Use 15

17 Configuration Objectives Provide a profile based scheme for customers to configure the OS and Impresario for their platform. The configuration scheme will support different OSes (Linux and MQX) and be compatible with OS s native configuration system. The configuration scheme should be flexible to extend for use with a configuration tool. External Use 16

18 FAS Configuration High-level Configuration Items Profile Sets up the high-level capabilities of the product, primarily based on memory configuration and application-level features. CPU i.mx6, Vybrid, and Kinetis will be officially supported Linux supported on i.mx and Vybrid MQX supported on Vybrid (A5 and M4) and Kinetis Board Ex. Vybrid Auto EVB, i.mx6 SABRE Auto, etc. This determines which peripherals are available, what the memory configuration looks like, IOMUX setup, input configuration, etc. External Use 17

19 FAS Configuration Execution fasconfig graphical configuration tool cd fsl_fas/infrastructure make config External Use 18

20 FAS Configuration Execution Target Configuration External Use 19

21 FAS Configuration Execution Platform Configuration External Use 20

22 FAS Configuration Execution FAS Configuration Metadata Configuration External Use 21

23 FAS Platform Compile and Build cd infrastructure make Generates Linux fakeroot to build against (os/linux) Builds all platform static libraries and optionally creates shared libs mcu-libs/libs/linux/libmcu.so OSA and common library fas/libs/linux/libfas.so fas/third-party/buildroot/lib/linux/libmfihost.so Builds and links applications apps/test_app/test_app External Use 22

24 Freescale Audio Solution Hands-On Test App External Use 23

25 FAS test_app cd apps/test_app/ make local Generates Linux fakeroot to build against (os/linux) Builds all platform static libraries and optionally creates shared libs mcu-libs/libs/linux/libmcu.so OSA and common library fas/libs/linux/libfas.so fas/third-party/buildroot/lib/linux/libmfihost.so Builds and links applications apps/test_app/test_app External Use 24

26 1. Finding a Device SHELL> getdev Get a list of available media devices from Device Manager and print the results. The Device Manager automatically handles the mounting and un-mounting of devices as they are connected and removed from the system as well as sending messages to registered applications to notify of device related events. dev_count = devicemgr_get_all_device_list(10, dev_list); for (i = 0; i < dev_count; i++) { print_device_info(dev_list[i]); } External Use 25

27 2. Player Creation and Setup SHELL> setdev 1 mydevice = devicemgr_get_device_by_id(1); The application can retrieve a device data structure that can then be passed to the player create function to build an audio pipeline appropriate to the device type. player_create(&myplayer, mydevice); - Create audio streamer task - Build the audio streamer pipeline based on device type -- Create source element based on device type -- Create elements for parsing/decoding as required by device type -- Create sink element player_event_register(myplayer, event_id, cb_func, args); -Tell player what events the application should be notified of e.g. changes to the playback state. When a registered event occurs within the streamer pipeline the specified callback function will be executed External Use 26

28 2. Player Creation and Setup (cont.) SHELL> setdev 1 browse_create(mysession, mydevice, browse_type) A default browse session is created by the application when creating a player. The browse session holds device specific context that is used to navigate the contents of devices that support content navigation such as filesystem based devices, Apple devices, or a CD player. Browse sessions can support browsing by metadata or filesystem depending on the type of device in use. External Use 27

29 3. Browsing Contents of a Device A number of functions exist to navigate the device content: SHELL> pwd SHELL> ls d SHELL> ls SHELL> ls f SHELL> filter mp3 wma browse_get_current_folder(session, folder); - Returns path of current browse session browse_get_folders(session, folder_list); Returns a list of folders in the current path browse_get_entries(session, entry_list); Returns a list of audio files and folders in the current path browse_get_tracks(session, track_list) Returns a list of audio files in the current path browse_set_filter_type(session, filter); Set what audio file extensions should be provided in browse results ignoring files that do not match the filter mask. External Use 28

30 3. Browsing Contents of a Device SHELL> cd 1 browse_enter_folder(folder_to_enter); Used to traverse down the browse tree. When browse type is set to filesystem this will set the current directory to a specified subfolder. SHELL> cd.. browse_exit_folder(); Used to traverse up the browse tree. When browse type is set to filesystem this will set the current directory to the parent directory of the current working path. External Use 29

31 4. Using Play Queue The PlayQueue object can be used in conjunction with the browse session to create a list of audio files. A play queue can then be associated with a Player to automatically handle the transition when a track finishes. External Use 30

32 4. Using Play Queue SHELL> mk queue SHELL> addq 2 SHELL> rmq 2 SHELL> move 2 4 SHELL> indexq 2 SHELL> clearq playqueue_create(&myqueue); Create an empty play queue object playqueue_add_track(myqueue, track); Add a track to a play queue object. The track parameter should be obtained from a browse session. playqueue_remove_track(myqueue, index); Remove a track at a specified index from the play queue. playqueue_move_track(myqueue, old_idx, new_idx); Move a track to a new index in the play queue. playqueue_set_current_track_index(myqueue, index); Set the current track index within the play queue playqueue_clear(myqueue); Remove all tracks from the play queue. External Use 31

33 4. Using Play Queue SHELL> shuffle on SHELL> repeat off playqueue_set_shuffle(myqueue, shuffle_state); Set the shuffle mode for the play queue for determining the next track to play. Shuffle can be set to Off, Songs, Albums, Random playqueue_set_repeat(myqueue, repeat_mode); Set the repeat mode for the play queue. Repeat mode can be set to Off, One, All. External Use 32

34 5. Playing Audio SHELL> file a:\test.mp3 SHELL> setq 2 player_set_track(myplayer, track); For use in on-demand mode Set the path for the input source Configure decoders/parsers in the pipeline based on file type player_set_playqueue(myplayer, myqueue); Associates a playqueue object with a player Get the current track from the play queue object Set the path for the input source Configure decoders/parsers in the pipeline based on file type External Use 33

35 5. Playing Audio SHELL> play SHELL> stop SHELL> pause player_control(myplayer, AUDIO_CTRL_PLAY); Set the state of streamer to Play -Pipeline processing is activated - Input file opened - Streamer task actively process input source and outputs audio player_control(myplayer, AUDIO_CTRL_STOP); Set the state of streamer to Stopped -Pipeline processing is deactivated - Input file closed - Streamer task waits for new events from player player_control(myplayer, AUDIO_CTRL_PAUSE); Set the state of streamer to Paused -Pipeline processing is deactivated - Streamer task waits for new events from player External Use 34

36 5. Playing Audio SHELL> next SHELL> prev SHELL> restart player_control(myplayer, AUDIO_CTRL_NEXT_TRACK); Go to the next track in the play queue. -Stop the current track if active -Get track information from the playqueue object -Reconfigure pipeline elements as required -Start playback player_control(myplayer, AUDIO_CTRL_PREV_TRACK); Go to the previous track in the play queue. -Stop the current track if active -Get track information from the playqueue object -Reconfigure pipeline elements as required -Start playback player_control(myplayer, AUDIO_CTRL_RESTART); Restart playback of the current track from the beginning. External Use 35

37 Freescale Audio Solution Hands-On Device Detection and Enumeration External Use 36

38 Custom Application Setup Create directory for application under apps apps/device_test/ Create Makefile External Use 37

39 Custom Application Setup (continued) Create source file setup for a custom FAS application Include the base header files: osa_common.h -> operating system abstraction includes fas_init.h -> initialization routines for FAS Write a main() entry point Looks identical to standard Linux/POSIX main() function signature Initialize FAS with fas_init() Kicks off any configured daemon threads like device manager and input manager Initializes FAS library components Build and install to fakeroot (/nfsroot/ on Host) make local External Use 38

40 Custom Application Setup (continued) Boilerplate Source External Use 39

41 Device Enumeration Hands-On Create Device Enumeration application Begin with boilerplate app setup Add devicemgr.h include Use devicemgr_get_all_device_list() API to get list of attached devices and print them to the display. Extend Device Enumeration application Instead of polling for devices, register a callback handler to receive messages on device connect / disconnect. External Use 40

42 Device Enumeration Hands-On - Code External Use 41

43 Browse and Playback Hands-On Create Browse and Playback Application Begin with device enumeration example Add maestro.h include for Maestro media functionality Build Maestro objects to interface with the device MediaDevice for device-specific interface MediaPlayer for playback control, based on device BrowseSession for device media library browsing Use Maestro APIs to browse the device and extract a playable media track. Use Maestro APIs to play the track. External Use 42

44 Browse and Playback Hands-On - Code External Use 43

45 Browse and Playback Hands-On - Code (continued) External Use 44

46 Browse and Playback Hands-On Extend Browse and Playback Application Create PlayQueue and add items Manipulate tracks in the queue using next/previous Retrieve the playing track info and display Browse to sub-folders and display External Use 45

47 Freescale Semiconductor, Inc. External Use

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink Session 3 How to leverage hardware accelerated video features to play back 720p/1080p video Audio

More information

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink Session 1 How to capture your initial Linux based product requirements and quickly build a custom

More information

μc/probe on the element14 BeagleBone Black

μc/probe on the element14 BeagleBone Black Micriμm μc/probe on the element14 BeagleBone Black 1. Introduction Whether you are doing kernel, driver or application development in a Linux environment, it's likely that at some point, you will need

More information

Track Two Building an Internet Radio with the TI Sitara AM3517 using LinuxLink

Track Two Building an Internet Radio with the TI Sitara AM3517 using LinuxLink Track Two Building an Internet Radio with the TI Sitara AM3517 using LinuxLink Session 1 How to assemble and deploy an initial BSP and setup the development environment with the matching SDK Audio streaming

More information

Develop Made For ipod (MFi) Accessories

Develop Made For ipod (MFi) Accessories Develop Made For ipod (MFi) Accessories FTF-CON-F0019 Rudan Bettelheim Business Development Manager A P R. 2 0 1 4 TM External Use Agenda Introduction to the Made For ipod (MFi) Program Freescale MFi Solution

More information

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0 Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0 1 Introduction... 3 2 Download DS-5 from www.arm.com/ds5... 3 3 Open DS-5 and configure the workspace... 3 4 Import the Projects into

More information

Linux Driver and Embedded Developer

Linux Driver and Embedded Developer Linux Driver and Embedded Developer Course Highlights The flagship training program from Veda Solutions, successfully being conducted from the past 10 years A comprehensive expert level course covering

More information

A brief intro to MQX Lite. Real work: hands-on labs. Overview, Main features and Code Size

A brief intro to MQX Lite. Real work: hands-on labs. Overview, Main features and Code Size October 2013 A brief intro to MQX Lite Overview, Main features and Code Size Real work: hands-on labs Create a new MQX-Lite project, add ConsoleIO and BitIO components Create tasks, watch the flashing

More information

Getting Started with FreeRTOS BSP for i.mx 7Dual

Getting Started with FreeRTOS BSP for i.mx 7Dual Freescale Semiconductor, Inc. Document Number: FRTOS7DGSUG User s Guide Rev. 0, 08/2015 Getting Started with FreeRTOS BSP for i.mx 7Dual 1 Overview The FreeRTOS BSP for i.mx 7Dual is a Software Development

More information

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module Freescale Semiconductor Document Number: KSDKK24FN256RN Release Notes 1.0.0, 08/2014 Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module 1 Overview These are the release notes for the TWR-K24F120M

More information

Kinetis SDK v Release Notes for KV5x Derivatives

Kinetis SDK v Release Notes for KV5x Derivatives Freescale Semiconductor, Inc. Document Number: KSDK120MKV5XRN Release Notes Rev. 0, 08/2015 Kinetis SDK v.1.2.0 Release Notes for KV5x Derivatives 1 Overview These are the release notes for the Freescale

More information

μc/probe on the RIoTboard (Linux)

μc/probe on the RIoTboard (Linux) Micriμm μc/probe on the RIoTboard (Linux) 1. Introduction Whether you are doing kernel, driver or application development in a Linux environment, it's likely that at some point, you will need to debug

More information

Hands-On Workshop: Developing with the Kinetis Software Development Kit

Hands-On Workshop: Developing with the Kinetis Software Development Kit Hands-On Workshop: Developing with the Kinetis Software Development Kit FTF-SDS-F0127 Michael Norman Technical Marketing Manager Chris Brown Applications Engineer A p r i l. 0 9. 2 0 1 4 TM External Use

More information

Intel SoC FPGA Embedded Development Suite User Guide

Intel SoC FPGA Embedded Development Suite User Guide Intel SoC FPGA Embedded Development Suite User Guide Updated for Intel Quartus Prime Design Suite: 18.0 Subscribe Send Feedback Latest document on the web: PDF HTML Contents Contents 1. Introduction to

More information

Hands-on with the Sitara Linux SDK

Hands-on with the Sitara Linux SDK Hands-on with the Sitara Linux SDK This presentation provides a hands-on overview of the Sitara Linux SDK. It focuses on the software and tools found in the SDK and how to use these tools to develop for

More information

μc/probe on the element14 BeagleBone Black

μc/probe on the element14 BeagleBone Black Micriμm μc/probe on the element14 BeagleBone Black 1. Introduction Whether you are doing kernel, driver or application development in a Linux environment, it's likely that at some point, you will need

More information

Getting Started with Kinetis SDK (KSDK) v.1.3

Getting Started with Kinetis SDK (KSDK) v.1.3 Freescale Semiconductor Document Number: KSDK13GSUG User's Guide Rev. 1, 11/2015 Getting Started with Kinetis SDK (KSDK) v.1.3 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides

More information

Getting Started with Kinetis SDK (KSDK) v.1.2

Getting Started with Kinetis SDK (KSDK) v.1.2 Freescale Semiconductor Document Number: KSDK12GSUG User's Guide Rev. 0, 4/2015 Getting Started with Kinetis SDK (KSDK) v.1.2 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides comprehensive

More information

EMBEDDED LINUX ON ARM9 Weekend Workshop

EMBEDDED LINUX ON ARM9 Weekend Workshop Here to take you beyond EMBEDDED LINUX ON ARM9 Weekend Workshop Embedded Linux on ARM9 Weekend workshop Objectives: Get you exposed with various trends in Embedded OS Leverage Opensource tools to build

More information

Red Suite 4 Getting Started. Applies to Red Suite 4.22 or greater

Red Suite 4 Getting Started. Applies to Red Suite 4.22 or greater Red Suite 4 Getting Started Applies to Red Suite 4.22 or greater March 26, 2012 Table of Contents 1 ABOUT THIS GUIDE... 3 1.1 WHO SHOULD USE IT... 3 2 RED SUITE 4... 4 2.1 NEW FEATURES IN RED SUITE 4...

More information

Here to take you beyond. ECEP Course syllabus. Emertxe Information Technologies ECEP course syllabus

Here to take you beyond. ECEP Course syllabus. Emertxe Information Technologies ECEP course syllabus Here to take you beyond ECEP Course syllabus Module: 1/6 Module name: Linux Systems To get familiar with Linux Operating system Commands, tools and editors Enable you to write Shell scripts To understand

More information

Introduction to Linux

Introduction to Linux Introduction to Linux EECS 211 Martin Luessi April 14, 2010 Martin Luessi () Introduction to Linux April 14, 2010 1 / 14 Outline 1 Introduction 2 How to Get Started 3 Software Development under Linux 4

More information

MaRTE OS: Overview and Linux Version

MaRTE OS: Overview and Linux Version MaRTE OS: Overview and Version Mario Aldea Rivas (aldeam@unican.es) Departamento de Electrónica y Computadores Universidad de Cantabria (Spain) Real-Time Systems Group, York, November 2004. DPTO. DE ELECTRÓNICA

More information

Labs instructions for Enabling BeagleBone with TI SDK 5.x

Labs instructions for Enabling BeagleBone with TI SDK 5.x Labs instructions for Enabling BeagleBone with TI SDK 5.x 5V power supply µsd ethernet cable ethernet cable USB cable Throughout this document there will be commands spelled out to execute. Some are to

More information

RN2483_Silica Documentation

RN2483_Silica Documentation RN2483_Silica Documentation Release 0 Silica Dec 19, 2017 Contents 1 Embedded Vision NXP 3 2 INTRODUCTION 5 2.1 Development tools............................................ 6 i ii Version 1.00E Copyright

More information

Getting Started with MCUXpresso SDK

Getting Started with MCUXpresso SDK NXP Semiconductors Document Number: MCUXSDKGSUG User's Guide Rev. 3, 03/2017 Getting Started with MCUXpresso SDK 1 Overview The MCUXpresso Software Development Kit (SDK) provides comprehensive software

More information

Freescale Kinetis Software Development Kit Release Notes

Freescale Kinetis Software Development Kit Release Notes Freescale Semiconductor, Inc. Document Number: KSDKRN Release Notes Rev. 1.0.0, 07/2014 Freescale Kinetis Software Development Kit Release Notes 1 Overview These are the release notes for the Freescale

More information

Hands-On with STM32 MCU Francesco Conti

Hands-On with STM32 MCU Francesco Conti Hands-On with STM32 MCU Francesco Conti f.conti@unibo.it Calendar (Microcontroller Section) 07.04.2017: Power consumption; Low power States; Buses, Memory, GPIOs 20.04.2017 21.04.2017 Serial Interfaces

More information

Kinetis SDK v Release Notes for the MK21DA5 and MKW24D5 Devices

Kinetis SDK v Release Notes for the MK21DA5 and MKW24D5 Devices Freescale Semiconductor, Inc. Document Number: KSDK110MK21DA5MKW24D5RN Release Notes Rev. 0, 02/2015 Kinetis SDK v.1.1.0 Release Notes for the MK21DA5 and MKW24D5 Devices 1 Overview These are the release

More information

MV 4412 Android 4.0 Compilation

MV 4412 Android 4.0 Compilation MV 4412 Android 4.0 Compilation Microvision Co., Ltd. Document Information Version 1.0 File Name MV4412 Android Compilation.doc Date 2012. 7. 12 Satus Working Revision History Date Version Update Descriptions

More information

U-Boot and Linux Kernel Debug using CCSv5

U-Boot and Linux Kernel Debug using CCSv5 U-Boot and Linux Kernel Debug using CCSv5 In this session we will cover fundamentals necessary to use CCSv5 and a JTAG to debug a TI SDK-based U-Boot and Linux kernel on an EVM platform. LAB: http://processors.wiki.ti.com/index.php/sitara_linux_training:_uboot_linux_debu

More information

Hands-On Workshop: Xtrinsic FXLC95000CL Sensing Platform with Intelligent Sensing Framework (ISF)

Hands-On Workshop: Xtrinsic FXLC95000CL Sensing Platform with Intelligent Sensing Framework (ISF) Hands-On Workshop: Xtrinsic FXLC95000CL Sensing Platform with Intelligent Sensing Framework (ISF) FTF-SDS-F0177 Margaret Nadworny SSD Software Manager A P R. 2 0 1 4 TM External Use Agenda Introduction

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide Freescale Semiconductor, Inc. KSDKKL03UG User s Guide Rev. 1.0.0, 09/2014 Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide 1 Introduction This document describes the hardware and software

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Embedded Systems Programming

Embedded Systems Programming Embedded Systems Programming OS Linux - Toolchain Iwona Kochańska Gdansk University of Technology Embedded software Toolchain compiler and tools for hardwaredependent software developement Bootloader initializes

More information

Getting Started with Freescale MQX RTOS for Kinetis SDK and Kinetis Design Studio IDE

Getting Started with Freescale MQX RTOS for Kinetis SDK and Kinetis Design Studio IDE Freescale Semiconductor, Inc. Document Number: KSDKGSKDSUG User s Guide Rev. 1, 04/2015 Getting Started with Freescale MQX RTOS for Kinetis SDK and Kinetis Design Studio IDE 1 Overview This section describes

More information

Installation and Maintenance

Installation and Maintenance Chapter 9 Installation and Maintenance 9.1 Hardware and software System requirements. 215 9.2 Operating Manuals. 216 9.3 Software. 221 9.4 Maintenance. 225 Chapter 9 Installation and Maintenance. This

More information

NSIGHT ECLIPSE EDITION

NSIGHT ECLIPSE EDITION NSIGHT ECLIPSE EDITION DG-06450-001 _v7.0 March 2015 Getting Started Guide TABLE OF CONTENTS Chapter 1. Introduction...1 1.1. About...1 Chapter 2. New and Noteworthy... 2 2.1. New in 7.0... 2 2.2. New

More information

Building graphic-rich and better performing native applications. Pro. Android C++ with the NDK. Onur Cinar

Building graphic-rich and better performing native applications. Pro. Android C++ with the NDK. Onur Cinar Building graphic-rich and better performing native applications Pro Android C++ with the NDK Onur Cinar For your convenience Apress has placed some of the front matter material after the index. Please

More information

VORAGO VA108x0 GCC IDE application note

VORAGO VA108x0 GCC IDE application note AN2015 VORAGO VA108x0 GCC IDE application note June 11, 2018 Version 1.0 VA10800/VA10820 Abstract ARM has provided support for the GCC (GNU C compiler) and GDB (GNU DeBug) tools such that it is now a very

More information

Blackfin cross development with GNU Toolchain and Eclipse

Blackfin cross development with GNU Toolchain and Eclipse Blackfin cross development with GNU Toolchain and Eclipse Version 1.0 embedded development tools Acknowledgements Ronetix GmbH Waidhausenstrasse 13/5 1140 Vienna Austria Tel: +43-720-500315 +43-1962-720

More information

Freescale MQX USB Stack for TWR-K24F120M GA User s Guide

Freescale MQX USB Stack for TWR-K24F120M GA User s Guide Freescale Semiconductor Document Number: USBTWRK24F120MUG User s Guide Rev. 1.0, 08/2014 Freescale MQX USB Stack for TWR-K24F120M GA User s Guide 1 Read Me First This document describes how to compile

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Bare Metal User Guide

Bare Metal User Guide 2015.11.30 UG-01165 Subscribe Introduction This guide will provide examples of how to create and debug Bare Metal projects using the ARM DS-5 Altera Edition included in the Altera SoC Embedded Design Suite

More information

NET+Works with GNU Tools Getting Started Guide

NET+Works with GNU Tools Getting Started Guide NET+Works with GNU Tools Getting Started Guide NET+Works with GNU Tools Getting Started Guide Operating system/version: 6.3 Part number/version: 90000718_C Release date: March 2006 www.digi.com 2006 Digi

More information

MCUXpresso SDK USB Stack User s Guide

MCUXpresso SDK USB Stack User s Guide NXP Semiconductors Document Number: USBSUG User s Guide Rev. 5, 03/2017 MCUXpresso SDK USB Stack User s Guide 1 Overview This document provides the following: Detailed steps to compile the USB examples,

More information

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink Session 2 How to build a control application using Qt Embedded for Linux to design a UI experience

More information

Release Notes. S32 Design Studio for ARM v1.1

Release Notes. S32 Design Studio for ARM v1.1 Release Notes S32 Design Studio for ARM v1.1 TABLE OF CONTENTS 1 Release description... 2 1.1 Release content... 2 2 What s New... 2 2.1 New device support... 2 2.2 New features... 2 3 System Requirements...

More information

MV V310 Android 4.0 Compilation

MV V310 Android 4.0 Compilation MV V310 Android 4.0 Compilation Microvision Co., Ltd. Document Information Version 1.0 File Name MVV310 Android Compilation.doc Date 2012. 4. 17 Satus Working Revision History Date Version Update Descriptions

More information

OS PORTING AND ABSTRACTION LAB USER MANUAL

OS PORTING AND ABSTRACTION LAB USER MANUAL OS PORTING AND ABSTRACTION LAB USER MANUAL Release 1.3.8 Copyright (c) 2010 MapuSoft Technologies 1301 Azalea Road Mobile, AL 36693 www.mapusoft.com Table of Contents CHAPTER 1. INTRODUCTION TO OS PAL...

More information

Android System Development Training 4-day session

Android System Development Training 4-day session Android System Development Training 4-day session Title Android System Development Training Overview Understanding the Android Internals Understanding the Android Build System Customizing Android for a

More information

Software Installation Guide for S32 Design Studio IDE (S32DS): FRDM-KEAZ128Q80 FRDM-KEAZ64Q64 FRDM-KEAZN32Q64

Software Installation Guide for S32 Design Studio IDE (S32DS): FRDM-KEAZ128Q80 FRDM-KEAZ64Q64 FRDM-KEAZN32Q64 Software Installation Guide for S32 Design Studio IDE (S32DS): FRDM-KEAZ128Q80 FRDM-KEAZ64Q64 FRDM-KEAZN32Q64 Ultra-Reliable MCUs for Industrial and Automotive www.freescale.com/frdm-kea External Use 0

More information

NSIGHT ECLIPSE EDITION

NSIGHT ECLIPSE EDITION NSIGHT ECLIPSE EDITION DG-06450-001 _v8.0 September 2016 Getting Started Guide TABLE OF CONTENTS Chapter 1. Introduction...1 1.1. About...1 Chapter 2. New and Noteworthy... 2 2.1. New in 7.5... 2 2.2.

More information

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Kernel Internals. Course Duration: 5 days. Pre-Requisites : Course Objective: Course Outline

Kernel Internals. Course Duration: 5 days. Pre-Requisites : Course Objective: Course Outline Course Duration: 5 days Pre-Requisites : Good C programming skills. Required knowledge Linux as a User Course Objective: To get Kernel and User Space of Linux and related programming Linux Advance Programming

More information

Optional Eclipse Workspace Configurations

Optional Eclipse Workspace Configurations 2019/01/08 11:20 1/16 This page will instruct you to install and configure Eclipse as your MidiBox Integrated Development Environment (IDE). Eclipse is supported on multiple platforms, including Windows,

More information

KENWOOD Remote Application. JVCKENWOOD Corporation. User Guide. Caution: Do not operate any function that takes your attention away from safe driving.

KENWOOD Remote Application. JVCKENWOOD Corporation. User Guide. Caution: Do not operate any function that takes your attention away from safe driving. KENWOOD Remote Application JVCKENWOOD Corporation KENWOOD Remote Application User Guide Caution: Do not operate any function that takes your attention away from safe driving. CONTENTS GETTING STARTED 1

More information

PathFinder-XD for MIPS Powered Devices. Simulator

PathFinder-XD for MIPS Powered Devices. Simulator v.1.0.6, 15 th January 2013 PathFinder-XD for MIPS Powered Devices Simulator Contents 1. Introduction 2 2. Installation 2 2.1 Windows Installation 2 2.2 Linux Installation 2 3. Using PathFinder-XD with

More information

Embedded Linux Architecture

Embedded Linux Architecture Embedded Linux Architecture Types of Operating Systems Real-Time Executive Monolithic Kernel Microkernel Real-Time Executive For MMU-less processors The entire address space is flat or linear with no memory

More information

Software Development & Education Center

Software Development & Education Center Software Development & Education Center Embedded Linux & RTOS With ARM 9 µc Embedded Linux and RTOS with ARM9 µc Introduction The course is designed for those who want to pursue Linux based Embedded Systems.

More information

Chapter Two. Lesson A. Objectives. Exploring the UNIX File System and File Security. Understanding Files and Directories

Chapter Two. Lesson A. Objectives. Exploring the UNIX File System and File Security. Understanding Files and Directories Chapter Two Exploring the UNIX File System and File Security Lesson A Understanding Files and Directories 2 Objectives Discuss and explain the UNIX file system Define a UNIX file system partition Use the

More information

LinuxScope-JTD Installation Guide. Version 4.0.0

LinuxScope-JTD Installation Guide. Version 4.0.0 LinuxScope-JTD Installation Guide Version 4.0.0 Platform Support LinuxScope-JTD v4.0.0 has been tested on the following platforms: Linux Ubuntu 10.04 and 11.10 (others will probably work) Windows XP (Other

More information

Hands-On Workshop: ARM mbed

Hands-On Workshop: ARM mbed Hands-On Workshop: ARM mbed FTF-DES-F1302 Sam Grove - ARM Michael Norman Freescale J U N. 2 0 1 5 External Use Agenda What is mbed mbed Hardware mbed Software mbed Tools mbed Support and Community Hands-On

More information

K101: Embedded Linux Basics

K101: Embedded Linux Basics K101: Embedded Linux Basics Linux is widely used as an embedded operating system and its market share is continuously growing. Reasons as quality, reliability, and configurability make its use quite attractive.

More information

Heterogeneous multi-processing with Linux and the CMSIS-DSP library

Heterogeneous multi-processing with Linux and the CMSIS-DSP library Heterogeneous multi-processing with Linux and the CMSIS-DSP library DS-MDK Tutorial AN290, September 2016, V 1.1 Abstract This Application note shows how to use DS-MDK to debug a typical application running

More information

ID 321L: KPIT GNU compiler plug-ins for HEW / KPIT Eclipse IDE

ID 321L: KPIT GNU compiler plug-ins for HEW / KPIT Eclipse IDE ID 321L: KPIT GNU compiler plug-ins for HEW / KPIT Eclipse IDE Matt Newsome, Principal Engineer, Software Tools, Renesas Electronics Europe, UK Kaushik Phatak, Tech Lead, KPIT Cummins Infosystems, Pune,

More information

CSE 390a Lecture 1. introduction to Linux/Unix environment

CSE 390a Lecture 1. introduction to Linux/Unix environment 1 CSE 390a Lecture 1 introduction to Linux/Unix environment slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/390a/ 2 Lecture summary Course introduction

More information

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink Session 4 How to optimize, test and integrate the solution for quick deployment Audio streaming

More information

The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power.

The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power. Introduction The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power. This project makes use of the "Sparrow" baremetal/amp

More information

How to set up FMOD*, Cocos2D-x*, and OpenAL* Libraries for Android* on Intel Architecture

How to set up FMOD*, Cocos2D-x*, and OpenAL* Libraries for Android* on Intel Architecture How to set up FMOD*, Cocos2D-x*, and OpenAL* Libraries for Android* on Intel Architecture Previously, we ve gone through instructions on how to compile a FFmpeg library on x86 architecture. This step-by-step

More information

Developing Environment for Intel Mainstone Board

Developing Environment for Intel Mainstone Board Developing Environment for Intel Mainstone Board Outline Introduction Board Bring-up Running Linux Kernel Building Your Own Linux Kernel Developing Your Own App 1 Introduction :: PXA27x XScale PXA27x Architecture

More information

Micrium OS Kernel Labs

Micrium OS Kernel Labs Micrium OS Kernel Labs 2018.04.16 Micrium OS is a flexible, highly configurable collection of software components that provides a powerful embedded software framework for developers to build their application

More information

OPERATION MANUAL GROM-MST4 AUDI MMI 2G

OPERATION MANUAL GROM-MST4 AUDI MMI 2G OPERATION MANUAL GROM-MST4 AUDI MMI 2G 1. EXT1-EXT2 PORTS - Accessories Cables Connection Connect the cables to the appropriate slots available on GROM-MST4 (see above illustration). EXT1- connect GROM

More information

CSE 391 Lecture 1. introduction to Linux/Unix environment

CSE 391 Lecture 1. introduction to Linux/Unix environment CSE 391 Lecture 1 introduction to Linux/Unix environment slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 2 Lecture summary Course introduction

More information

Introduction of Linux

Introduction of Linux Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell

More information

EECS Software Tools. Lab 2 Tutorial: Introduction to UNIX/Linux. Tilemachos Pechlivanoglou

EECS Software Tools. Lab 2 Tutorial: Introduction to UNIX/Linux. Tilemachos Pechlivanoglou EECS 2031 - Software Tools Lab 2 Tutorial: Introduction to UNIX/Linux Tilemachos Pechlivanoglou (tipech@eecs.yorku.ca) Sep 22 & 25, 2017 Material marked with will be in your exams Sep 22 & 25, 2017 Introduction

More information

Embedded Streaming Media with GStreamer and BeagleBoard. Presented by Todd Fischer todd.fischer (at) ridgerun.com

Embedded Streaming Media with GStreamer and BeagleBoard. Presented by Todd Fischer todd.fischer (at) ridgerun.com Embedded Streaming Media with GStreamer and BeagleBoard Presented by Todd Fischer todd.fischer (at) ridgerun.com 1 Agenda BeagleBoard-XM multimedia features GStreamer concepts GStreamer hands on exercises

More information

Freescale MQX RTOS for Kinetis SDK Release Notes version beta

Freescale MQX RTOS for Kinetis SDK Release Notes version beta Freescale Semiconductor Document Number: MQXKSDKRN Release Notes Rev 1.0.0, 07/2014 Freescale MQX RTOS for Kinetis SDK Release Notes version 1.0.0 beta 1 Read Me This is the release notes for Freescale

More information

QNX Software Development Platform 6.6. Quickstart Guide

QNX Software Development Platform 6.6. Quickstart Guide QNX Software Development Platform 6.6 QNX Software Development Platform 6.6 Quickstart Guide 2005 2014, QNX Software Systems Limited, a subsidiary of BlackBerry. All rights reserved. QNX Software Systems

More information

SABRE for Automotive Infotainment Quick Start Guide. Smart Application Blueprint for Rapid Engineering Based on the i.mx 6 Series

SABRE for Automotive Infotainment Quick Start Guide. Smart Application Blueprint for Rapid Engineering Based on the i.mx 6 Series SABRE for Automotive Infotainment Quick Start Guide Smart Application Blueprint for Rapid Engineering Based on the i.mx 6 Series About SABRE Platform for Automotive Infotainment Based on the the i.mx 6

More information

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim Ray Duran Staff Design Specialist FAE, Altera Corporation 408-544-7937

More information

PetaLinux SDK User Guide. Eclipse Plugin Guide

PetaLinux SDK User Guide. Eclipse Plugin Guide PetaLinux SDK User Guide Notice of Disclaimer The information disclosed to you hereunder (the "Materials") is provided solely for the selection and use of Xilinx products. To the maximum extent permitted

More information

Early Software Development Through Emulation for a Complex SoC

Early Software Development Through Emulation for a Complex SoC Early Software Development Through Emulation for a Complex SoC FTF-NET-F0204 Raghav U. Nayak Senior Validation Engineer A P R. 2 0 1 4 TM External Use Session Objectives After completing this session you

More information

CSE 391 Lecture 1. introduction to Linux/Unix environment

CSE 391 Lecture 1. introduction to Linux/Unix environment CSE 391 Lecture 1 introduction to Linux/Unix environment slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 2 Lecture summary Course introduction

More information

Quick Start Guide. TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM

Quick Start Guide. TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM TWR-VF65GS10 For Vybrid Controller Solutions Based on ARM Cortex -A5 and Cortex-M4 Processors with the DS-5 Toolchain TOWER SYSTEM Get to Know the TWR-VF65GS10 Dual Quad SPI K20 JTAG Header UART Selection

More information

OS lpr. www. nfsd gcc emacs ls 1/27/09. Process Management. CS 537 Lecture 3: Processes. Example OS in operation. Why Processes? Simplicity + Speed

OS lpr. www. nfsd gcc emacs ls 1/27/09. Process Management. CS 537 Lecture 3: Processes. Example OS in operation. Why Processes? Simplicity + Speed Process Management CS 537 Lecture 3: Processes Michael Swift This lecture begins a series of topics on processes, threads, and synchronization Today: processes and process management what are the OS units

More information

SD Card with Eclipse/Emulator

SD Card with Eclipse/Emulator SD Card with Eclipse/Emulator Creating the SD Card "image" file (a file representation of a physical SD Card) Assume Cygwin bash shell: $ cd c: $ mkdir sdcards $ cd sdcards $ Android\android-sdk\tools\mksdcard

More information

File Synchronization using API Google Drive on Android Operating System

File Synchronization using API Google Drive on Android Operating System File Synchronization using API Google Drive on Android Operating System Agustinus Noertjahyana, Kevin Darmawan, Justinus Andjarwirawan Informatics Engineering Department Petra Christian University Surabaya,

More information

Intellicus Cluster and Load Balancing- Linux. Version: 18.1

Intellicus Cluster and Load Balancing- Linux. Version: 18.1 Intellicus Cluster and Load Balancing- Linux Version: 18.1 1 Copyright 2018 Intellicus Technologies This document and its content is copyrighted material of Intellicus Technologies. The content may not

More information

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724 ID 730L: Getting Started with Multimedia Programming on Linux on SH7724 Global Edge Ian Carvalho Architect 14 October 2010 Version 1.0 Mr. Ian Carvalho System Architect, Global Edge Software Ltd. Responsible

More information

Development Environment of Embedded System

Development Environment of Embedded System Development Environment of Embedded System Outline Embedded hardware development Embedded software development FPGA board Source: http://www.altera.com/ Source: http://www.hitechglobal.com/boards/virtex4lx200.htm

More information

Android OS and Power Architecture

Android OS and Power Architecture June 24, 2010 OS and Power Architecture FTF-NET-F0677 Phil Brownfield Software Product Manager, NMG Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC,

More information

The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams.

The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams. The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams. Operating System Services User Operating System Interface

More information

DS-5 ARM. Getting Started with DS-5. Version 5.6. Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F (ID071411)

DS-5 ARM. Getting Started with DS-5. Version 5.6. Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F (ID071411) ARM DS-5 Version 5.6 Getting Started with DS-5 Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F () ARM DS-5 Getting Started with DS-5 Copyright 2010, 2011 ARM. All rights reserved. Release

More information

TQ2440 Development Platform Manual

TQ2440 Development Platform Manual TQ2440 Development Platform Manual 0 Directory Directory... 1 Chapter 1 Introduction... 7 11Appearance of TQ2440 development platform... 7 12Hardware resource of TQ2440... 7 13Software introduction of

More information

Tooling for Success: Embedded Linux File System Management

Tooling for Success: Embedded Linux File System Management Tooling for Success: Embedded Linux File System Management Presenter: Troy Kitch Session Code: AE205 Track: Enabling Technologies Market Segment: Development Tools Agenda Traditional Linux Development

More information

Development Environment Embedded Linux Primer Ch 1&2

Development Environment Embedded Linux Primer Ch 1&2 Development Environment Embedded Linux Primer Ch 1&2 Topics 1) Systems: Host and Target 2) Host setup 3) Host-Target communication CMPT 433 Slides #3 Dr. B. Fraser 18-05-05 2 18-05-05 1 Host & Target Host

More information

Use_cases_English.qxd :51 Pagina 1. Use cases

Use_cases_English.qxd :51 Pagina 1. Use cases Use_cases_English.qxd 20-10-2005 16:51 Pagina 1 Media Center MCP9350i Use cases Use_cases_English.qxd 20-10-2005 16:51 Pagina 2 Online help: www.p4c.philips.com For interactive help, downloads and frequently

More information

Hands-On Workshop: ARM mbed : From Rapid Prototyping to Production

Hands-On Workshop: ARM mbed : From Rapid Prototyping to Production Hands-On Workshop: ARM mbed : From Rapid Prototyping to Production FTF-SDS-F0107 Michael Norman, Martin Kojtal A P R. 2 0 1 4 TM External Use Agenda What is mbed? mbed Hardware mbed Software mbed Tools

More information