U-boot kernel transplantation steps

Publisher:MysticalWhisperLatest update time:2024-09-29 Source: cnblogsKeywords:U-boot Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Linux 3.3.5 system porting

  1. Copy mach-smdk6410.c under arch/arm/mach-s3c6410/ to mach-my6410.c;

  2. Open Kconfig under arch/arm/mach-s3c6410/ and make a menu item based on MACH_SMDK6410:

config MACH_MY6410

bool "MY6410"

select CPU_S3C6410

select SAMSUNG_DEV_ADC

select S3C_DEV_HSMMC

select S3C_DEV_HSMMC1

select S3C_DEV_I2C1

select SAMSUNG_DEV_IDE

select S3C_DEV_FB

select S3C_DEV_RTC

select SAMSUNG_DEV_TS

select S3C_DEV_USB_HOST

select S3C_DEV_USB_HSOTG

select S3C_DEV_WDT

select SAMSUNG_DEV_BACKLIGHT

select SAMSUNG_DEV_KEYPAD

select SAMSUNG_DEV_PWM

select HAVE_S3C2410_WATCHDOG if WATCHDOG

select S3C64XX_SETUP_SDHCI

select S3C64XX_SETUP_I2C1

select S3C64XX_SETUP_IDE

select S3C64XX_SETUP_FB_24BPP

select S3C64XX_SETUP_KEYPAD

help

Machine support for the Pillar MY6410

  1. Open the arch/arm/tools/mach-types file. The machine ID stored here must be consistent with the ID in uboot. Copy line 283 and add it to the back and modify it to:

smdk6410 MACH_SMDK6410 SMDK6410 1626

xx6410 MACH_XX6410 XX6410 1626 The kernel can be started only when this machine ID is the same as the machine ID in UBOOT;

  1. Modify the BSP file mach-my6410.c, the content is as follows:

Change all smdk6410 in the mach-mach-my6410.c file to my6410 (do not capitalize SMDK6410)

MACHINE_START(MY6410, "MY6410") //This should match MACH-MY6410 in Kconfig

  1. Add obj-$(CONFIG_MACH_MY6410) += mach-my6410.o to the last line of Makefile in the current directory

  2. Modify the top-level Makefile:

ARCH ?= arm

CROSS_COMPILE ?= /usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-

  1. Copy the s3c6400-defconfig file in arch/arm/configs/, save it as .config, configure the kernel to support EABI, select XX6410 board, save and exit;

  2. Execute make menuconfig to configure the kernel:


Keywords:U-boot Reference address:U-boot kernel transplantation steps

Previous article:Learning to control LED code
Next article:2440, 6410, 210 memory interface comparison

Latest Microcontroller Articles
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
    Since development under LINUX is still quite troublesome, is there a more convenient and simple development method under WINDOWS? The answer is yes. Of course, it is not a development tool like ADS, because it ...
  • Learn ARM development(15)
    When using GCC to develop ARM, you will definitely encounter compiler problems. For example, you will encounter various warnings and errors when compiling C code. For example, I encountered several warnings yesterday, so let's take a look at what these warnings are ...
  • Learn ARM development(16)
  • Learn ARM development(17)
  • Learn ARM development(18)
  • Embedded system debugging simulation tool
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号