The Universal Boot Loader ( Das U-Boot )



Similar documents
VoIP Laboratory B How to re flash an IP04

Booting Linux from a USB Flash Device on MPC5200 Systems David Wolfe, Infotainment, Multimedia and Telematics Division

The embedded Linux quick start guide lab notes

opensuse for ARM On Your Device Sonntag, 21. Oktober 12

Application Development Kit for Android Installation Guide

Pwn Plug Community Edition 1.1 Installation Guide

The Embedded Linux Quick Start Guide In the Beginning... Embedded Linux Conference Europe 2010

i.mx USB loader A white paper by Tristan Lelong

Buildroot Workshop. Libre Software Meeting Thomas Petazzoni Free Electrons

Open Network Install Environment (ONIE) LinuxCon North America 2015

Matrix 510/520 User Guide

How to Run the MQX RTOS on Various RAM Memories for i.mx 6SoloX

User Guide Release June 5, 2015

ARP,TCP,IP utility -zjednodusene a rychle Jiri Kubina jiri.kubina@osu.cz Ver. 1.0 leden 2006

Solo / Dual / Quad ARM Cortex-A9 CPU Module

Embedded Linux Platform Developer

Embedded Trusted Computing on ARM-based systems

Yun Shield User Manual VERSION: 1.0. Yun Shield User Manual 1 / 22.

ROM Monitor. Entering the ROM Monitor APPENDIX

[HOW TO RECOVER AN INFINITI/EVOLUTION MODEM IDX ] 1

Embedded Linux Systems

AN10860_1. Contact information. NXP Semiconductors. LPC313x NAND flash data and bad block management

EDS1100/2100. VMware Image for Linux Software Developers Kit (SDK) Quick Start Guide

Managing Windows XP Firewall Through Command-line

LAB THREE STATIC ROUTING

MCF54418 NAND Flash Controller

Linux Disaster Recovery best practices with rear

SEAGATE BUSINESS NAS ACCESSING THE SHELL. February 1, 2014 by Jeroen Diel IT Nerdbox

Open vswitch Configuration Guide

Skywire TCP Socket Examples

Open Network Install Environment

NETGEAR WNR3500L Open Source Wireless N (Draft) Router Open Source Guide & Resources

Reboot the ExtraHop System and Test Hardware with the Rescue USB Flash Drive

FileCruiser. VA2600 SR1 Quick Configuration Guide

Scalable PLC AC500 Communication AC500 Modbus TCP. ABB Group Version 3.1 ( ) Technical Guides

SheevaPlug Development Kit README Rev. 1.2

Getting started with ARM-Linux

Sistemi ad agenti Principi di programmazione di sistema

Running Debian on Inexpensive Network Attached Storage Device

Linux Kernel and Driver Development Training

DEVELOPMENT GUIDE ALTA DS 2. Android BSP

Embedded Linux Training. Lab Book. free electrons

AVR32737: AVR32 AP7 Linux Getting Started. 32-bit Microcontrollers. Application Note. Features. 1 Introduction

OVS Configuration Guide

STLinux Software development environment

Updating MNS-BB CUSTOMER SUPPORT INFORMATION PK012906

Cloud Storage Quick Start Guide

Easy H.264 video streaming with Freescale's i.mx27 and Linux

ipac-5010 User Guide + -

Secure Boot on i.mx50, i.mx53, and i.mx 6 Series using HABv4

Installing and Using the vnios Trial

Rapid Assessment Key User Manual

PBX DIGITAL TELEPHONE EXCHANGE MAINTENANCE GUIDE

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

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition

Digitally Signed Cisco Software

SNMP COMMAND SNMP SNMP [HELP] [COMMUNITY SYSCONTACT SYSLOCATION SYSNAME SYSOBJECID/OID TRAPS LIST]

Performance Evaluation of Linux Bridge

How To Understand The Linux Kernel And Its History

Software Prerequisites Linux Ubuntu LTS. Estimated completion time: 15min. The goal of this hands-on is to:

SysPatrol - Server Security Monitor

New Technology Introduction: MIT App Inventor

How To Set Up A Network Map In Linux On A Ubuntu 2.5 (Amd64) On A Raspberry Mobi) On An Ubuntu (Amd66) On Ubuntu 4.5 On A Windows Box

ACP ThinManager Tech Notes Troubleshooting Guide

How To Backup a SmartCenter

Software User Guide UG-461

PCI Express SATA / esata 6Gb/s RAID Card User Manual

Embedded Single Board Computer GESBC-9260/GESBC-9260B User s Manual

i.mx Trust Architecture Protects assets of multiple stakeholders Guards against sophisticated attacks Assures software measures TM 2

Lab 1: Introduction to the network lab

Linux on Soho-Router

Introduction to Operating Systems

Understanding Slow Start

HP Security Modules. Software Upgrade Guide. Part number: Document version: 6PW

Quick Note 53. Ethernet to W-WAN failover with logical Ethernet interface.

PCIe AHCI-IP Demo Instruction Rev Jul-15

FriendlyARM mini2440

Red Hat Linux Networking

Embedded Linux Systems

HighPoint RAID Management Command Line Interface Guide

Asterisk on Alvis-PBX

Basic System. Vyatta System. REFERENCE GUIDE Using the CLI Working with Configuration System Management User Management Logging VYATTA, INC.

2015/02/07 05:41 1/23 WIZ550WEB Users' Guide

NAM CLI Commands: - logout

Monitoring Your Network

WA2192 Introduction to Big Data and NoSQL. Classroom Setup Guide. Web Age Solutions Inc. Copyright Web Age Solutions Inc. 1

Network/IP Camera Set up and Re-programming. Leopard Imaging Inc. Jan, 2013.

Adapting the PowerPC 403 ROM Monitor Software for a 512Kb Flash Device

AVG 8.5 Anti-Virus Network Edition

LPC-2478-STK Software Quickstart Guide

Internet-bridge XPort

Install Guide for JunosV Wireless LAN Controller

Embedded Asterisk. A Crazy Man s Approach to VoIP. Terry Dunlap. 5/12/2007 terrydunlap.com

How to deploy console cable to connect WIAS-3200N and PC, to reset setting or check status via console

File Transfers. Contents

Configuring the Switch IP Address and Default Gateway

Procedure to Create and Duplicate Master LiveUSB Stick

Transcription:

1. března 2014

Úvod U-Boot je program typu monitor Licence GPLv2 Nasazen v mnoha produktech Snadno přenositelný a laditelný Podporuje mnoho architektur ARM, BlackFin, m68k, MIPS, NIOS, PowerPC, Sparc, x86... 1000+ zařízení v hlavní řadě Poskytuje mnoho funkcí

Historie 1999 8xx-boot 2000 PPCBoot 2002 ARMBoot Listopad 2002 PPCBoot 2.0.0 aka. U-Boot 0.1.0 2002 podpora pro x86 2003 podpora pro MIPS32, MIPS64, NIOS, m68k...

Uživatelské rozhraní CLI, většinou přes seriový port Bourne-kompatibilní shell (HUSH z busybox) Podporuje skriptování Environment obsahuje proměnné a skripty

Uživatelské rozhraní DEMO U-Boot 2014.01 (Feb 15 2014-15:57:04) CPU: Freescale i.mx53 rev2.1 at 1200 MHz Reset cause: POR Board: DENX M53EVK I2C: ready DRAM: 1 GiB NAND: 256 MiB MMC: FSL_SDHC: 0 In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 =>

Základní příkazy RTFM help Memory md, mw, cmp,..., cp, nm Environment env, run Další reset, sleep, bdinfo, coninfo

Memory Vhodné na zkoumání registrů Ne na každý pamět ový region lze přistupovat libovolně md [.b,.w,.l] address [# of objects] mw [.b,.w,.l] address value [count] cmp [.b,.w,.l] addr1 addr2 [count] => md 0x74000000 0x2 74000000: ffffffff ffffffff... => md.w 0x74000000 0x2 74000000: ffff ffff... => mw 0x71000000 0x12345678 0x10 => mw 0x72000000 0x12345678 0x8 => cmp.b 0x71000000 0x72000000 0x40 byte at 0x71000020 (0x78)!= byte at 0x72000020 (0xff) Total of 32 byte(s) were the same

Environment => help env env - environment handling commands Usage: env ask name [message] [size] - ask for environment variable env default [-f] -a - [forcibly] reset default environment env default [-f] var [...] - [forcibly] reset variable(s) to the env delete [-f] var [...] - [forcibly] delete variable(s) env edit name - edit environment variable env export [-t -b -c] [-s size] addr [var...] - export envi env grep [-e] [-n -v -b] string [...] - search environment env import [-d] [-t -b -c] addr [size] - import environment env print [-a name...] - print environment env run var [...] - run commands in an environment variable env save - save environment env set [-f] name [arg...]

Environment 2 => env set foo bar baz => env set quux echo $foo => env print foo foo=bar baz => env print quux quux=echo $foo => run quux bar baz

Další příkazy => bdinfo arch_number = 0xFFFFFFFF boot_params = 0x70000100 DRAM bank = 0x00000000 -> start = 0x70000000 -> size = 0x20000000 DRAM bank = 0x00000001 -> start = 0xB0000000 -> size = 0x20000000 eth0name = FEC ethaddr = c0:e5:4e:xx:xx:xx current eth = FEC ip_addr = 192.168.1.10 baudrate = 115200 bps TLB addr = 0xAFFF0000 relocaddr = 0xAFF26000 reloc off = 0x3EF26000 irq_sp = 0xAF521F28 sp start = 0xAF521F18

Načtení souboru z lokálního média Init média: SD/MMC: mmc rescan USB: usb reset SATA: sata init IDE: ide reset Načtení souboru: <command> <interface> <dev[:part]> [addr] [filename] command: ext2load, ext4load, fatload interface: mmc, usb, ide, sata

Načtení souboru ze sít ě Nastavení sít ě: => env set ipaddr 192.168.1.310 => env set netmask 255.255.255.0 => env set serverip 192.168.1.301 => env set gatewayip 192.168.1.354 ICMP: => ping ${serverip} TFTP: => tftp ${loadaddr} ${serverip}:path/to/file => tftp path/to/file

Formát jádra U-Boot podporuje mnoho formátů jádra: ELF bootelf zimage bootz uimage bootm fitimage bootm FDT a Ramdisk: bootm <kernel> <ramdisk> <dtb>

Výsledek DEMO => tftp ${loadaddr} fitimage ; bootm ${loadaddr} Using FEC device TFTP from server 192.168.1.301; our IP address is 192.168.1.310 Filename fitimage. Load address: 0x70800000 Loading: #######################################... ## Loading kernel from FIT Image at 72000000... Using conf@1 configuration Trying kernel@1 kernel subimage Description: Linux kernel... Verifying Hash Integrity... sha1+ OK Booting using the fdt blob at 0x723275d8 Loading Kernel Image... OK Loading Device Tree to 8fff8000, end 8ffffd6d... OK Starting kernel... [ 0.000000] Booting Linux on physical CPU 0x0

Vývoj GIT: git://git.denx.de/u-boot.git ML: u-boot@lists.denx.de

Děkuji za pozornost, Q/A?