配置u-boot板級檔案例項
建立新u-boot板級目錄,編譯不同u-boot.bin檔案
系統環境
硬體平臺:imx6
軟體平臺:Android4.4.2。
【1】Android 指定不同uboot編譯config檔案
device/fsl/sabresd_6dq/BoardConfig.mk
TARGET_BOOTLOADER_CONFIG := 6q:mx6q_sabresd_android_config 6dl:mx6dl_sabresd_android_config
6q:mx6q_sabresd_android_config
6q指定編譯出的u-boot名稱 形如: u-boot-6q.bin
mx6q_sabresd_android_config指定了bootloader哪個標頭檔案
【2】bootloader對應的config標頭檔案
bootable/bootloader/uboot-imx/include/configs/mx6q_sabresd_android.h
新增
bootable/bootloader/uboot-imx/include/configs/mx6q_sabresd_vwcs14_android.h
bootable/bootloader/uboot-imx/include/configs/mx6q_sabresd_vwcs14.h 指定LOGO型別
【3】不一樣的配置用了一個board 目錄編譯, 我這裡需要新建一個board目錄用於編譯特定的板級uboot
bootable/bootloader/uboot-imx/Makefile
原有的Makefile配置:
mx6dl_sabresd_android_config \
mx6q_sabresd_config \
mx6q_sabresd_android_config \
mx6q_sabresd_mfg_config \
mx6q_sabresd_iram_config : unconfig
@[ -z “$(findstring iram_,[email protected])” ] || \
{ echo “TEXT_BASE = 0x00907000” >$(obj)board/freescale/mx6q_sabresd/config.tmp ; \
echo “… with iram configuration” ; \
}
@$(MKCONFIG) $(@:_config=) arm arm_cortexa8 mx6q_sabresd freescale mx6
新增板級config和板級目錄:
include $(obj)include/config.mk
export ARCH CPU BOARD VENDOR SOC 對應上面5個部分
mx6q_sabresd_vwcs14_android_config : unconfig
@[ -z “$(findstring iram_,[email protected])” ] || \
{ echo “TEXT_BASE = 0x00907000” >$(obj)board/freescale/mx6q_sabresd_vwcs14/config.tmp ; \
echo “… with iram configuration” ; \
}
@$(MKCONFIG) $(@:_config=) arm arm_cortexa8 mx6q_sabresd freescale mx6
【4】新增板級目錄
bootable/bootloader/uboot-imx/board/freescale/mx6q_sabresd_vwcs14/
bootable/bootloader/uboot-imx/board/freescale/mx6q_sabresd_vwcs14/Makefile
板級檔案編譯成靜態庫
include $(TOPDIR)/config.mk
LIB = $(obj)lib$(BOARD).a
COBJS := $(BOARD).o
【5】uboot程式段排列指定新增目錄
bootable/bootloader/uboot-imx/board/freescale/mx6q_sabresd_vwcs14/u-boot.lds
.text :
{
board/freescale/mx6q_sabresd_vwcs14/flash_header.o (.text.flasheader)
board/freescale/mx6q_sabresd_vwcs14/libmx6q_sabresd_vwcs14.a (.text)
*(.text)
}
【6】程式碼拷貝注意標頭檔案巨集定義
該巨集是標頭檔案巨集bootable/bootloader/uboot-imx/include/configs/mx6q_sabresd_vwcs14_android.h
#ifndef MX6Q_SABRESD_VWCS14_ANDROID_H
#define MX6Q_SABRESD_VWCS14_ANDROID_H
【7】u-boot預設引導id引導的kernel板級id配置
注意和kernel中的id配合kernel_imx/arch/arm/tools/mach-types
bootable/bootloader/uboot-imx/board/freescale/mx6q_sabresd/mx6q_sabresd.c:1788:
gd->bd->bi_arch_number = MACH_TYPE_MX6Q_SABRESD;
bootable/bootloader/uboot-imx/include/asm-arm/mach-types.h:3260:
#define MACH_TYPE_MX6Q_SABRESD 3980
相關推薦
配置u-boot板級檔案例項
建立新u-boot板級目錄,編譯不同u-boot.bin檔案 系統環境 硬體平臺:imx6 軟體平臺:Android4.4.2。 【1】Android 指定不同uboot編譯config檔案 device/fsl/sabresd_6dq/BoardConfig.mk
配置u-boot 引數,構造NFS啟動Beaglebone Black板的作業系統
NOTE The printenv and help commands are useful for understanding these variables in more depth. If you wish to view the current value of a specific enviro
u-boot.lds連結檔案詳解
GNU編譯器生成的目標檔案預設為elf格式,elf檔案由若干段(section)組成,如不特殊指明,由C源程式生成的目的碼中包含如下段: .text(正文段)包含程式的指令程式碼; .data(資料段)包含固定的資料,如常量、字串; .bss(未初始化資料段)包含未初始化的變數
u-boot(三)啟動檔案
目錄 u-boot(三)啟動檔案 彙編 C:_start_armboot 程式碼摘要 C:main_loop 核心啟動 選單處理(自定義實現) 命令處理 titl
Ubuntu虛擬機器雙網絡卡的配置(U-boot,tftp下載)
通過此文的設定,可以讓Ubuntu虛擬機器實現: 1.ubuntu虛擬機器能上網查資料,下載軟體等; 2.tftp伺服器能給本地裝置傳輸資料,不會和ubuntu網路衝突。 一,VMWare新建兩個虛擬網路,如:Vmnet0、Vmnet1;
Ubuntu虛擬機雙網卡的配置(U-boot,tftp下載)
ubun ubuntu虛擬機 color uri vmw src 網卡設置 vmware 自動分配 通過此文的設置,可以讓Ubuntu虛擬機實現: 1.ubuntu虛擬機能上網查資料,下載軟件等; 2.tftp服務器能給本地設備傳輸數據,不會和ubuntu網絡沖突
s3c2410 linux板級檔案裝置的初始化過程
/*linux板級裝置的初始化過程 start_kernel() -> setup_arch(&command_line) -> mdesc = setup_machine(machine_arch_type) -> list = lookup_m
u-boot 使用 jffs2 檔案系統載入核心
1. 修改kernel 中的 nand.c#define MV_NUM_OF_NAND_PARTS 7static struct mtd_partition parts_info[] = { { .name = "u-boot", .offset = 0,
u-boot下配置掛載NFS根檔案系統
一、在linux系統主機下安裝NFS伺服器 在ubuntu10.04下安裝命令為: sudoapt-get install nfs-kernel-server 二、配置nfs伺服器 在ubuntu下安裝完ssh伺服器後預設開機啟動
【Android 系統開發】 編譯 Android檔案系統 u-boot 核心 並燒寫到 OK-6410A 開發板上
本篇文章中用到的工具原始碼下載 : -- 光碟所含內容 : Android 引導 u-boot 原始碼, Android 核心 原始碼, Android 系統原始碼, 交叉編譯工具鏈;各項操作說明 : -- 編譯環境 : 編譯原始碼 (u-boot, 核心, Android
qemu 模擬-arm-mini2440開發板-啟動u-boot,kernel和nfs檔案系統
qemu 本文介紹瞭如何編譯u-boot、linux kernel,然後用qemu啟動u-boot和linux kernel,達到與開發板上一樣的學習效果! 雖然已經買了2440開發板,但是在實際學習開發過程中,還是覺得不方便,既然這樣,那就用qemu模擬2440開發板,
buildroot構建項目(三)--- u-boot 2017.11 適配開發板修改 1
型號 mmu mman body 成功 -c 存儲器 介紹 我們 當前雖然編譯成功了,但是對於我們自己的目標板並不太適用。還得做一系列得修改。 一、lds 文件分析 u-boot 中最重要得鏈接文件即是,u-boot.lds。我們可以查看我們編譯出來得 u-boot
buildroot構建項目(四)--- u-boot 2017.11 適配開發板修改 2 ---- 系統啟動初始化之一
鏈接 extc 信號 分析 col clock -h 17.1 標誌位 一、代碼分析 上一節已經分析了鏈接文件,知道了首先代碼是從 _start 開始,之後設置了中斷向量表,然後從 start.s 開始運行。 _start:vectors.S (arch\arm\li
buildroot構建項目(五)--- u-boot 2017.11 適配開發板修改 4 ---- 系統啟動初始化之三
vid def include cmp ble soft setup.s bubuko 賦值 一、內存控制器 在關閉了MMU和caches 之後 就進入lowlevel_init 函數,對內存控制器進行初始化。lowlevel_init.S (board\samsung
buildroot構建項目(七)--- u-boot 2017.11 適配開發板修改 4 ---- 系統啟動初始化之四
ack tar span mov tel 變量初始化 清零 ppi ntb 設置完寄存器控制器後,則跳出cpu_init_crit,進入_main 函數。即進入crt0.S (arch\arm\lib) 跟著代碼流程慢慢走 一、crt0.S 1.1 第一步執行代碼
三、u-boot 的配置-mkconfig 腳本
nbsp echo 鏈接 後退 pre AR 包含 共創 編譯過程 3.1 mkconfig 腳本 1 100ask24x0_config : unconfig 2 @$(MKCONFIG) $(@:_config=) arm arm920t 100a
[U-boot]u-boot檔案結構
接目錄:README分析 參考資料 uboot版本檔案結構的更新改變 最好的開始 開啟下載的u-boot,開啟README,裡面進行詳細的說明 U-Boot的README檔案的中文翻譯 1、版本號變化: 2008年8月及以前,按版本號命名:
u-boot的配置過程分析
前面在分析主makefile的時候,我們知道執行make 100ask24x0_config這個命令會在include目錄下建立一個config.mk檔案。 那麼為什麼編譯就會生成這個檔案呢?我們來看下這個命令究竟做了什麼,在主Makefile中我們可以找到以下命令: 100ask24x0_
U-boot 配置與編譯
首先選擇預設配置: [email protected]:~/share/build/u-boot-2018.11$ make vexpress_ca15_tc2_defconfig HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfi
haproxy配置檔案例項
[[email protected] ~]# cat /etc/haproxy/haproxy.cfg global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy