Bootloader transplants S3C44B0 of uClinux

Publisher:电子创意达人Latest update time:2023-02-03 Source: elecfansKeywords:bootloader  uClinux  S3C44B0 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Compiling some function codes that are far away from other parts of the core and are not frequently used into loadable modules will help reduce the length of the kernel, reduce the memory consumed by the kernel, and simplify the impact on the kernel when the corresponding environment changes for this function. Many functions can be handled in this way, such as network card support, support for file systems such as FAT, etc.

After configuring the kernel, execute the following commands in sequence:
make dep; make clean; make lib_ only; make user_ only; make romfs; linux.bin, linux.data, linux.text, image.bin and other target files will be generated under uClinux-dist/images/. Errors may occur during compilation and need to be debugged and modified based on the error information.


  3.4 Download and run the kernel

  (1) We will burn the U-Boot target file u-boot.bin that has been transplanted to the target hardware platform through JTAG. The starting address should start from 0 when burning, and run from the 0 address after the target board is powered on. Start running the transplanted bootloader. We can detect the serial port output of the target board through HyperTerminal under Windows or minicom under Linux;

  (2) Use the U-Boot command tftpboot to download our transplanted kernel, tftpboot c008000 linux.bin; go c008000. Through the above two steps, uClinux can be downloaded and run.

  After the system starts, it first executes the bootloader, completes the initialization task of the hardware device, and then hands over the operation control to the uClinux kernel, and the uClinux system starts running.


  4 Conclusion

  Due to the source code openness of the Linux operating system and the good performance of the ARM microprocessor, how to transplant the Linux system to the ARM platform has attracted more and more attention. Operating system transplantation is a prerequisite for building an embedded system based on ARM microprocessors. Designing the bootloader separately from the system kernel can make the software structure clearer, and the function of the former can be used to flexibly implement multiple ways of booting the system. .


  The innovation of this paper: This paper uses transplantation of U-Boot as the system bootloader, thus realizing uClinux-2.6 kernel transplantation. As a powerful bootloader, U-Boot is suitable for multiple platforms and can boot multiple operating systems. Its powerful functions can be used to implement multiple download and boot methods of the system kernel. It is necessary to master its transplantation method. uClinux2.6 The kernel has better support for hardware platforms. During the transplantation process, you should pay attention to the differences between different hardware platforms.

[1] [2]
Keywords:bootloader  uClinux  S3C44B0 Reference address:Bootloader transplants S3C44B0 of uClinux

Previous article:Transplantation of μCOS-Ⅱ on ARM series microcontroller S3C44B0x
Next article:Illustration of JLINK debugging experience under ADS

Recommended ReadingLatest update time:2024-11-23 03:27

Steps to use HID bootloader for LPC51U68
Friends who have a certain understanding of NXP MCUs must know that NXP has a very complete MCU boot loader solution: MCU BOOT. Have you ever experienced it? This MCU BOOT is very rich in content. It implements a boot loader based on various interfaces (UART I2C SPI CAN USB...), and provides the blhost command line
[Microcontroller]
Steps to use HID bootloader for LPC51U68
Write your own dsPIC / PIC24 serial bootloader in C
  HyperBootloader_dsPIC   HyperBootloader_dsPIC is a UART bootloader I implemented in C language, using serial communication, suitable for Microchip's dsPIC30, dsPIC33, and also for PIC24. The MCU-side bootloader is compiled with XC16, and the computer-side communication software is HyperTerminal.   dsPIC30 and dsPIC3
[Microcontroller]
Write your own dsPIC / PIC24 serial bootloader in C
ARM-bootloader-C language environment design
1. Stack initialization 1. Concept Analysis 1.1 Stack A stack is a data organization method with the last-in-first-out property, that is, the last data stored is taken out first, and the first data stored is taken out last. The bottom of the stack is the location of the first data pushed into the stack, and the to
[Microcontroller]
ARM-bootloader-C language environment design
A problem with the bootloader resetting the interrupt vector table under STM32L4xx
question When developing a bootloader, reset the interrupt vector table when jumping to the application static __asm void asmJump(unsigned int addr){     /* goto applicant */     LDR SP,     ADD R0,#0x4     LDR R1,     BX R1 } static void stm32l431GotoApplicant(unsigned int addr){     /* set vector registe
[Microcontroller]
Introduction to s3c2410's Bootloader (Vivi)
0. Bootloader   Bootloader is the first code that runs after the system is powered on. It usually runs for a very short time, but it is very important for embedded systems. In our desktop computers, the bootloader consists of the BIOS (firmware program) and the operating system bootloader (such as NTLOADER, GRUB and L
[Microcontroller]
Stm32 Bootloader Summary
1. Basic Concepts 1.IAP IAP is the abbreviation of In Application Programming. IAP means that the user's own program burns part of the User Flash area during operation. The purpose is to easily update the firmware program in the product through the reserved communication port after the product is released . Usually
[Microcontroller]
PIC32MZ online upgrade via USB -- USB CDC bootloader
Recently, I wrote a USB online upgrade program for my development board PIC32MZ EC starter kit - USB CDC bootloader. With it, I can easily upgrade my application. I decided to write this USB online upgrade program about a week ago. There are two types of USB, USB host and USB device. I don't have much experience with
[Microcontroller]
27. Operation of lighting up LED
Led can be used as a tool for debugging programs: In the early stages of development of embedded system software, such as Bootloader and kernel, since hardware such as serial ports have not yet been initialized, the debugging methods are quite limited. At this time, Led can be used as a debugging method. OK6410
[Microcontroller]
27. Operation of lighting up LED
Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号