Soumettre la recherche
Mettre en ligne
BeagleBone Black Bootloaders
•
0 j'aime
•
4,666 vues
S
SysPlay eLearning Academy for You
Suivre
BeagleBone Black Bootloaders
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 24
Recommandé
U-Boot - An universal bootloader
U-Boot - An universal bootloader
Emertxe Information Technologies Pvt Ltd
USB Drivers
USB Drivers
Anil Kumar Pugalia
Embedded_Linux_Booting
Embedded_Linux_Booting
Rashila Rr
Linux Porting
Linux Porting
Champ Yen
Static partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-V
RISC-V International
Bootloaders (U-Boot)
Bootloaders (U-Boot)
Omkar Rane
Bootloaders
Bootloaders
Anil Kumar Pugalia
Introduction to Modern U-Boot
Introduction to Modern U-Boot
GlobalLogic Ukraine
Recommandé
U-Boot - An universal bootloader
U-Boot - An universal bootloader
Emertxe Information Technologies Pvt Ltd
USB Drivers
USB Drivers
Anil Kumar Pugalia
Embedded_Linux_Booting
Embedded_Linux_Booting
Rashila Rr
Linux Porting
Linux Porting
Champ Yen
Static partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-V
RISC-V International
Bootloaders (U-Boot)
Bootloaders (U-Boot)
Omkar Rane
Bootloaders
Bootloaders
Anil Kumar Pugalia
Introduction to Modern U-Boot
Introduction to Modern U-Boot
GlobalLogic Ukraine
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
Chris Simmonds
Build your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto project
Yen-Chin Lee
U Boot or Universal Bootloader
U Boot or Universal Bootloader
Satpal Parmar
Uboot startup sequence
Uboot startup sequence
Houcheng Lin
BeagleBone Black Booting Process
BeagleBone Black Booting Process
SysPlay eLearning Academy for You
SPI Drivers
SPI Drivers
SysPlay eLearning Academy for You
Embedded Linux on ARM
Embedded Linux on ARM
Emertxe Information Technologies Pvt Ltd
Linux Kernel MMC Storage driver Overview
Linux Kernel MMC Storage driver Overview
RajKumar Rampelli
Jagan Teki - U-boot from scratch
Jagan Teki - U-boot from scratch
linuxlab_conf
Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)
RuggedBoardGroup
Linux Initialization Process (2)
Linux Initialization Process (2)
shimosawa
I2C Drivers
I2C Drivers
SysPlay eLearning Academy for You
Platform Drivers
Platform Drivers
SysPlay eLearning Academy for You
Linux Kernel Booting Process (1) - For NLKB
Linux Kernel Booting Process (1) - For NLKB
shimosawa
U-Boot presentation 2013
U-Boot presentation 2013
Wave Digitech
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
Adrian Huang
Launch the First Process in Linux System
Launch the First Process in Linux System
Jian-Hong Pan
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Jian-Hong Pan
LCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted Firmware
Linaro
U boot porting guide for SoC
U boot porting guide for SoC
Macpaul Lin
Linux Porting
Linux Porting
Anil Kumar Pugalia
BeagleBoard-xM Bootloaders
BeagleBoard-xM Bootloaders
SysPlay eLearning Academy for You
Contenu connexe
Tendances
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
Chris Simmonds
Build your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto project
Yen-Chin Lee
U Boot or Universal Bootloader
U Boot or Universal Bootloader
Satpal Parmar
Uboot startup sequence
Uboot startup sequence
Houcheng Lin
BeagleBone Black Booting Process
BeagleBone Black Booting Process
SysPlay eLearning Academy for You
SPI Drivers
SPI Drivers
SysPlay eLearning Academy for You
Embedded Linux on ARM
Embedded Linux on ARM
Emertxe Information Technologies Pvt Ltd
Linux Kernel MMC Storage driver Overview
Linux Kernel MMC Storage driver Overview
RajKumar Rampelli
Jagan Teki - U-boot from scratch
Jagan Teki - U-boot from scratch
linuxlab_conf
Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)
RuggedBoardGroup
Linux Initialization Process (2)
Linux Initialization Process (2)
shimosawa
I2C Drivers
I2C Drivers
SysPlay eLearning Academy for You
Platform Drivers
Platform Drivers
SysPlay eLearning Academy for You
Linux Kernel Booting Process (1) - For NLKB
Linux Kernel Booting Process (1) - For NLKB
shimosawa
U-Boot presentation 2013
U-Boot presentation 2013
Wave Digitech
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
Adrian Huang
Launch the First Process in Linux System
Launch the First Process in Linux System
Jian-Hong Pan
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Jian-Hong Pan
LCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted Firmware
Linaro
U boot porting guide for SoC
U boot porting guide for SoC
Macpaul Lin
Tendances
(20)
Booting Android: bootloaders, fastboot and boot images
Booting Android: bootloaders, fastboot and boot images
Build your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto project
U Boot or Universal Bootloader
U Boot or Universal Bootloader
Uboot startup sequence
Uboot startup sequence
BeagleBone Black Booting Process
BeagleBone Black Booting Process
SPI Drivers
SPI Drivers
Embedded Linux on ARM
Embedded Linux on ARM
Linux Kernel MMC Storage driver Overview
Linux Kernel MMC Storage driver Overview
Jagan Teki - U-boot from scratch
Jagan Teki - U-boot from scratch
Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)
Linux Initialization Process (2)
Linux Initialization Process (2)
I2C Drivers
I2C Drivers
Platform Drivers
Platform Drivers
Linux Kernel Booting Process (1) - For NLKB
Linux Kernel Booting Process (1) - For NLKB
U-Boot presentation 2013
U-Boot presentation 2013
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
qemu + gdb: The efficient way to understand/debug Linux kernel code/data stru...
Launch the First Process in Linux System
Launch the First Process in Linux System
Let's trace Linux Lernel with KGDB @ COSCUP 2021
Let's trace Linux Lernel with KGDB @ COSCUP 2021
LCU13: An Introduction to ARM Trusted Firmware
LCU13: An Introduction to ARM Trusted Firmware
U boot porting guide for SoC
U boot porting guide for SoC
En vedette
Linux Porting
Linux Porting
Anil Kumar Pugalia
BeagleBoard-xM Bootloaders
BeagleBoard-xM Bootloaders
SysPlay eLearning Academy for You
File Systems
File Systems
Anil Kumar Pugalia
gcc and friends
gcc and friends
Anil Kumar Pugalia
References
References
Anil Kumar Pugalia
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Anil Kumar Pugalia
Embedded C
Embedded C
Anil Kumar Pugalia
Block Drivers
Block Drivers
Anil Kumar Pugalia
PCI Drivers
PCI Drivers
Anil Kumar Pugalia
Interrupts
Interrupts
Anil Kumar Pugalia
Character Drivers
Character Drivers
Anil Kumar Pugalia
File System Modules
File System Modules
Anil Kumar Pugalia
Network Drivers
Network Drivers
Anil Kumar Pugalia
Introduction to Linux Drivers
Introduction to Linux Drivers
Anil Kumar Pugalia
Serial Drivers
Serial Drivers
SysPlay eLearning Academy for You
En vedette
(15)
Linux Porting
Linux Porting
BeagleBoard-xM Bootloaders
BeagleBoard-xM Bootloaders
File Systems
File Systems
gcc and friends
gcc and friends
References
References
Kernel Debugging & Profiling
Kernel Debugging & Profiling
Embedded C
Embedded C
Block Drivers
Block Drivers
PCI Drivers
PCI Drivers
Interrupts
Interrupts
Character Drivers
Character Drivers
File System Modules
File System Modules
Network Drivers
Network Drivers
Introduction to Linux Drivers
Introduction to Linux Drivers
Serial Drivers
Serial Drivers
Similaire à BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
SysPlay eLearning Academy for You
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
SysPlay eLearning Academy for You
U-Boot Porting on New Hardware
U-Boot Porting on New Hardware
RuggedBoardGroup
Raspberry Pi tutorial
Raspberry Pi tutorial
艾鍗科技
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card
艾鍗科技
my Windows 7 info
my Windows 7 info
isky guard
Aplus essentials-exam-cram
Aplus essentials-exam-cram
Peter Sonko
101 1.1 hardware settings
101 1.1 hardware settings
Acácio Oliveira
PowerAI Deep Dive ( key points )
PowerAI Deep Dive ( key points )
Paulo Sergio Lemes Queiroz
ChromePad - Chromium OS ThinkPad X220
ChromePad - Chromium OS ThinkPad X220
AndrewWright224
ChromePad - Chromium OS for ThinkPad
ChromePad - Chromium OS for ThinkPad
AndrewWright224
Armboot process zeelogic
Armboot process zeelogic
Aleem Shariff
Motherboard
Motherboard
BarojReal
Slimline Open Firmware
Slimline Open Firmware
Heiko Joerg Schick
05 - BIOS.ppt
05 - BIOS.ppt
AliyuAhmed9
P1 unit 2
P1 unit 2
Joebarton1997
Study on Android Emulator
Study on Android Emulator
Samael Wang
Ch4 v70 system_configuration_en
Ch4 v70 system_configuration_en
confidencial
1.1 hardware settings v2
1.1 hardware settings v2
Acácio Oliveira
1 study of motherboard
1 study of motherboard
Ankit Dubey
Similaire à BeagleBone Black Bootloaders
(20)
BeagleBone Black Bootloaders
BeagleBone Black Bootloaders
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
U-Boot Porting on New Hardware
U-Boot Porting on New Hardware
Raspberry Pi tutorial
Raspberry Pi tutorial
建構嵌入式Linux系統於SD Card
建構嵌入式Linux系統於SD Card
my Windows 7 info
my Windows 7 info
Aplus essentials-exam-cram
Aplus essentials-exam-cram
101 1.1 hardware settings
101 1.1 hardware settings
PowerAI Deep Dive ( key points )
PowerAI Deep Dive ( key points )
ChromePad - Chromium OS ThinkPad X220
ChromePad - Chromium OS ThinkPad X220
ChromePad - Chromium OS for ThinkPad
ChromePad - Chromium OS for ThinkPad
Armboot process zeelogic
Armboot process zeelogic
Motherboard
Motherboard
Slimline Open Firmware
Slimline Open Firmware
05 - BIOS.ppt
05 - BIOS.ppt
P1 unit 2
P1 unit 2
Study on Android Emulator
Study on Android Emulator
Ch4 v70 system_configuration_en
Ch4 v70 system_configuration_en
1.1 hardware settings v2
1.1 hardware settings v2
1 study of motherboard
1 study of motherboard
Plus de SysPlay eLearning Academy for You
Linux Internals Part - 3
Linux Internals Part - 3
SysPlay eLearning Academy for You
Linux Internals Part - 2
Linux Internals Part - 2
SysPlay eLearning Academy for You
Linux Internals Part - 1
Linux Internals Part - 1
SysPlay eLearning Academy for You
Kernel Timing Management
Kernel Timing Management
SysPlay eLearning Academy for You
Understanding the BBB
Understanding the BBB
SysPlay eLearning Academy for You
POSIX Threads
POSIX Threads
SysPlay eLearning Academy for You
Linux DMA Engine
Linux DMA Engine
SysPlay eLearning Academy for You
Cache Management
Cache Management
SysPlay eLearning Academy for You
SPI Drivers
SPI Drivers
SysPlay eLearning Academy for You
Introduction to BeagleBone Black
Introduction to BeagleBone Black
SysPlay eLearning Academy for You
Introduction to BeagleBoard-xM
Introduction to BeagleBoard-xM
SysPlay eLearning Academy for You
Linux System
Linux System
SysPlay eLearning Academy for You
Plus de SysPlay eLearning Academy for You
(12)
Linux Internals Part - 3
Linux Internals Part - 3
Linux Internals Part - 2
Linux Internals Part - 2
Linux Internals Part - 1
Linux Internals Part - 1
Kernel Timing Management
Kernel Timing Management
Understanding the BBB
Understanding the BBB
POSIX Threads
POSIX Threads
Linux DMA Engine
Linux DMA Engine
Cache Management
Cache Management
SPI Drivers
SPI Drivers
Introduction to BeagleBone Black
Introduction to BeagleBone Black
Introduction to BeagleBoard-xM
Introduction to BeagleBoard-xM
Linux System
Linux System
Dernier
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
BookNet Canada
Slack Application Development 101 Slides
Slack Application Development 101 Slides
praypatel2
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
Delhi Call girls
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
2toLead Limited
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
BookNet Canada
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Sinan KOZAK
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
OnBoard
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
Scott Keck-Warren
Dernier
(20)
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Slack Application Development 101 Slides
Slack Application Development 101 Slides
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
BeagleBone Black Bootloaders
1.
© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. BeagleBone Black Bootloaders
2.
2© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. What to Expect? BBB Memory Organization Beagle Booting Process W's of X-Loader BSP in X-Loader W's of U-Boot BSP in U-Boot
3.
3© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. BBB Memory Organization DDR 512MB ROM Internal RAM 64KB SOC BeagleBone Black 0x80000000 0x40200000 0x402F0400 EMMC 4GB Ext. MMC
4.
4© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. General Booting of BeagleBoard ROM Code Internal ROM X-Loader Internal SRAM Internal ROM U-Boot External DDR Kernel External DDR
5.
5© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. BBB Images ROM Code X-Loader SOC BeagleBone Black ROM Internal RAM DDR u-boot bbb.dtb uImage Ramdisk/initrd (Ramdisk Boot)
6.
6© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. X-Loader
7.
7© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. W's of X-Loader First stage bootloader for Beagle Board Derived from u-boot – the second stage bootloader Named as MLO (Memory Loader) in filesystem. Runs in an internal SRAM Loads the second stage bootloader i.e. U-Boot
8.
8© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. Let's Get Down to Source Code
9.
9© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. X-Loader Code Flow cpu/armv7/start.S reset() Disable IRQ & FIQ. Switch to supervisor mode Low Level Initialization cpu_init_cp15() Invalidate and disable Instruction & data Cache Disable MMU cpu/armv7/lowlevel_i nit.S lowlevel_init() arm/lib/crt0.S _main() C Runtime setup arm/lib/spl.c board_init_f() Early Board Setup Clear BSS and jump to board_init_r() Common/spl/spl.c board_init_r() Load the u-boot
10.
10© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. X-Loader for BBB Board configuration include/configs/am335x_evm.h CPU dependent code arch/arm/cpu/armv7/*.c arch/arm/cpu/armv7/lowlevel_init.S arch/arm/lib/crt0.S arch/arm/cpu/armv7/am33x/board.c arch/arm/lib/spl.c Board dependent code Board/ti/am335x/board.* Board independent code common/spl/spl.c
11.
11© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot
12.
12© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. W's of U-Boot Universal Bootloader (U-Boot) An Open Source Bootloader With minimal changes, can be ported for any board GRUB/LILO Designed with x-86 in mind Huge in Size Needs to be changed drastically for porting on other architecture
13.
13© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Source Tree arch – Architecture dependent Code board – Board dependent Code common – Environment & Command Line Code doc – Documentation drivers – Device specific Drivers fs – File System support Code include – Headers lib – Compression, Encryption related Code net – Minimal Network Stack tools – U-Boot Utilities (mkimage is here)
14.
14© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Initialization Details Bootloader starts its execution from flash /RAM Hardware Diagnostics, like POST, … Configuring the CPU speed, MMU setting, etc Memory setup & initialization Setting up interfacing ports like serial, VGA, … Sets up the address of the boot parameters
15.
15© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Configuration Creating a configuration file for the board Adding a Kconfig file in 'board/<vendor>/<board> with below info: Architecture CPU Board Vendor (May be NULL) SoC (May be NULL)
16.
16© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Configuration Output Configuration files for use in C Sources include/generated/autoconf.h spl/include/generated/autoconf.h (For SPL) include/config.h include/configs/<board>.h Configuration files for Makefile include/config/auto.conf spl/include/config/auto.conf (For SPL) include/autoconf.mk
17.
17© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. Let's Get Down to Source Code
18.
18© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Code Flow cpu/armv7/start.S reset() Disable IRQ & FIQ. Switch to supervisor mode Low Level Initialization cpu_init_cp15() Invalidate and disable Instruction & data Cache Disable MMU cpu/armv7/lowlevel_i nit.S lowlevel_init() arm/lib/crt0.S _main() C Runtime setup arm/lib/board.c board_init_f() Early Board Setup Calculate Addresses (SP, Dest, GD) for Relocation Call the board initialization functions Arch/arm/lib/reloc ate.S relocate_code() General Relocation arm/lib/crt0.S _main() Clear BSS, Setup GD and jump to board_init_r() arm/lib/board.c board_init_r() Final Board Setup Board/it/am335x/board.c board_init() Board specific device setup env_relocate() Setup Environment common/main.c main_loop() Boot the kernel or give out the u-boot shell
19.
19© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. Let's Check What is the starting point of u-boot? Where is the address of the Environmental Variables set? Where is RAM initialized? Which file is the interface between the architecture dependent code & board dependent code? Where is serial initialized? From where is the kernel invoked? And what are the parameters passed to the kernel? Where is default environment defined? where is the board dependent file for BBB? Where is the configuration file for BBB? Where is the architecture number set? Where is the pin multiplexing done? From where does the boot delay comes?
20.
20© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot BSP Board configuration include/configs/am335x_evm.h CPU dependent code arch/arm/cpu/armv7/*.c arch/arm/cpu/armv7/lowlevel_init.S arch/arm/lib/crt0.S arch/arm/lib/relocate.S arch/arm/cpu/armv7/am33x/board.c arch/arm/lib/board.c Board dependent code Board/ti/am335x/board.* Board independent code common/* driver, fs, common(cmd, flash, env..)
21.
21© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Porting Implies adding a new Board to U-Boot That entails Adding board specific code at the right places Adding the new board directory under board/ with Makefile Initialization Code for the Board Kconfig file Adding the new board header under include/configs/ with Configuration for the Board
22.
22© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. U-Boot Porting Hands On Add the configuration file .h in include/configs Add the Kconfig file at board/<vendor>/<soc>/ Modify the arch/arm/Kconfig to add the menu item for the board and source the board dependent Kconfig file Add the board dependent file at board/<vendor>/<soc>/ Modify the path for linker script at include/configs/<config_name.h> In the linker script, add the path for built_in.o for the board. Add the defconfig file in configs folder. Add atleast CONFIG_ARM and CONFIG_TARGET_<BOARD>
23.
23© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. What all have learnt? BBB Memory Organization Beagle Booting Process W's of X-Loader BSP in X-Loader W's of U-Boot BSP in U-Boot
24.
24© 2015-17 SysPlay
Workshops <workshop@sysplay.in> All Rights Reserved. Any Queries?