1. 程式人生 > >Linux核心移植 part3:Exynos4412核心編譯

Linux核心移植 part3:Exynos4412核心編譯

為了在exynos 4412平臺上執行系統,選擇了linux來測試,因為只是用來測試的,所以並沒有完整功能的移植,只要能啟動就可以了。兼顧方便和先進性,選擇了4.1這個長期支援版本。從清華的源上下載速度比較快。

因為選擇的是uboot啟動,執行

$ make exynos_defconfig
$ make uImage

注:如果找不到mkimage工具,在uboot根目錄tools目錄下有,放到/usr/local/bin即可。

編譯的時候竟然報錯了

multiple (or no) load addresses: 
This is incompatible with uImages
Specify LOADADDR on
the commandline to build an uImage

這個log是在arch/arm/boot/Makefile中列印的。相關程式碼如下

check_for_multiple_loadaddr = \
if [ $(words $(UIMAGE_LOADADDR)) -ne 1 ]; then \
    echo 'multiple (or no) load addresses: $(UIMAGE_LOADADDR)'; \
    echo 'This is incompatible with uImages'; \
    echo 'Specify LOADADDR on the commandline to build an uImage'
; \ false; \ fi

而UIMAGE_LOADADDR的定義則為

ifneq ($(LOADADDR),)
  UIMAGE_LOADADDR=$(LOADADDR)
else
  ifeq ($(CONFIG_ZBOOT_ROM),y)
    UIMAGE_LOADADDR=$(CONFIG_ZBOOT_ROM_TEXT)
  else
    UIMAGE_LOADADDR=$(ZRELADDR)
  endif
endif

經過一系列的檢查,發現LOADADDR為空,而ZRELADDR又是和MACHINE變數有關,在exynos_defconfig後會選擇MULTIPLATFORM,使得MACHINE為空。現在直接在這個Makefile中添加了

LOADADDR := 0x40007000

相關推薦

Linux核心移植 part3Exynos4412核心編譯

為了在exynos 4412平臺上執行系統,選擇了linux來測試,因為只是用來測試的,所以並沒有完整功能的移植,只要能啟動就可以了。兼顧方便和先進性,選擇了4.1這個長期支援版本。從清華的源上下載速度比較快。 因為選擇的是uboot啟動,執行 $ ma

Linux核心移植 part3串列埠驅動

每日一樂:小美在作文簿裡寫上長大後的願望:一、我希望能有一個可愛的孩子;二、我還希望能有一個愛我的丈夫。結果,發現老師寫了一句評語:“請注意先後順序。” 介紹Linux kernel 4.1對exynos 4412串列埠的支援。 其實這部分工作已經過

Linux核心移植 part2uboot裝置樹--生成過程分析

本文從裝置樹軟體控制相關程式碼進行分析,進而理清裝置樹相關的知識。 先放一個裝置樹在記憶體中的結構圖: 分析來源為$(tree)/lib/fdtdec_test.c 一、資料結構 1.1 檔案頭 每個dtb都包含如下結構的檔案頭,用來表示裝

Linux核心移植 part2uboot 裝置樹--基本概念和原始碼介紹

arm uboot的裝置樹原始檔位於arch/arm/dts/目錄下,網路上有很多介紹Linux裝置樹概念的文章,這裡以dts相關的API為切入點,如果都懂了,裝置樹的東西就迎刃而解了。本篇文章首先記錄一些基本知識,下一篇進行原始碼分析。 一、裝置樹檔案基

Linux核心移植 part4關於initrd和initramfs

一、initrd ram disk中的file system叫做initrd,全名叫做initial ramdisk。 注意: 當下用initrams多 如何建立initial ramisk host > dd if=/dev/ze

Linux核心移植 part1eMMC啟動

時間,就象海棉裡的水,只要願擠,總還是有的。 —— 魯迅 從建立部落格到現在陸陸續續有好幾個童鞋來找我要程式碼,其中有個問題經常提到:支不支援從emmc啟動。但是我移植uboot和kernel只是為了探究我自己感興趣的東東,所以沒有去關注emmc啟

Exynos4412 核心移植(一)—— 核心配置過程分析

一、前言 1、linux核心五大功能: 程序管理(cpu)  記憶體管理(記憶體)裝置管理(驅動)網路管理(網路協議tcp/ip)檔案系統(vfs) 2、linux版本號: linux 2.6  2--->主版本號  6---->次版本號:奇數代表測試版本 偶

Exynos4412 核心移植(三)—— 核心啟動過程分析

核心啟動所用函式如下:         與移植U-Boot 的過程相似,在移植Linux 之前,先了解它的啟動過程。Linux 的過程可以分為兩部分:架構/開發板相關的引導過程、後續的通用啟動過程。對於uImage、zImage ,它們首先進行自解壓得到vmlinux

第4章 核心移植 C(Exynos4412+Linux3.14)

4.6核心的配置和編譯 【Linux核心下載地址】 1、 解壓核心 將linux-3.14.tar.xz拷貝到/home/linux下並解壓 $tar xvf linux-3.14.tar.xz $ cd linux-3.14 2、

深度|螞蟻金服分散式金融核心套件金融核心系統變革助推器

小螞蟻說: 分散式金融核心套件是螞蟻金服針對分散式核心系統全新推出的金融科技產品,該套件包含客戶、產品、資產平臺等多個應用元件,業界首創將融合核心業務能力元件與技術平臺於一體,可有效解決金融機構應用研發效能、資料治理和運營、全域風控管理、技術架構升級等問題。 本文是對螞蟻金服高階技術專家李玄的採訪

Linux基本命令25文字檔案編譯命令

cat命令 cat命令用於檢視純文字檔案(內容較少的文字檔案),格式為“cat[選項][檔案]”。 選項: -n引數:檢視文字內容時顯示行號 執行cat -n 檔案命令: more命令 more命

深度 | 螞蟻金服分散式金融核心套件金融核心系統變革助推器

分散式金融核心套件是螞蟻金服針對分散式核心系統全新推出的金融科技產品,該套件包含客戶、產品、資產

打造自己的專屬linux(四)Linux核心編譯過程簡介

linux在前不久剛釋出了最新的3.0核心,在linux的學習中,瞭解核心的編譯是一個必不可少的功課。前幾天,學習了linux核心的編譯流程,在此總結下,大家來一起學習。 以最新的3.0核心為例,我下載的是linux3.0.1 下載地址:http://www.kernel.

Linux 4.4核心移植以及Android系統編譯

Android預移植到tiny4412 kernel for tiny4412  前面的文章已經把uboot給弄好了,下面就可以用自己移植的uboot來啟動核心了。對於核心的移植,一開始選擇的是linux4.4的核心,為什麼選4.4,因為開始的時候是想

linux核心移植編譯

在瞭解了核心及其相關知識之後,就要著手核心移植的實驗了。 使用make menuconfig出現問題請移步make: *** 沒有規則可以建立目標“menuconfig”。 停止。   Linux核心移植與編譯 1.linux核心的下載 實驗開始之前,你需要自行下載li

讀書筆記LINUX核心完全剖析基於0.12核心

讀書筆記:LINUX核心完全剖析   IBM PC及其相容機主要使用 獨立編址方式,採用獨立的I/O地址空間對控制裝置中的暫存器進行定址和訪問,IBM PC也部分地使用統一編址。對於使用EISA、PCI等匯流排結構的PC,有64KB的I/O地址空間可供使用。在普通Li

linux核心移植步驟

2016.6.8 經過一個多星期的核心折磨,今天終於可以寫下自己移植核心的一些心得,網上有很多部落格論壇都有談到,但是這些又說的方式有些模糊,這裡我綜合的幾個部落格在重新說下核心替換編譯的步驟、以及如何更新啟動項grub。替換linux的核心一共有兩種方式,第一種方式是下載官方kerne

基於tiny4412的Linux核心移植(支援device tree)(三)

https://www.cnblogs.com/pengdonglin137/p/5146791.html 閱讀目錄(Content) 作者資訊 平臺簡介 注意 一、裝置樹反編譯 二、在u-boot列印資訊 三、開啟Linux核心啟動早期的log 四、在核心自解壓時dump記憶體 五、C

基於tiny4412的Linux核心移植(支援device tree)(二)

https://www.cnblogs.com/pengdonglin137/p/5143516.html 閱讀目錄(Content) 作者資訊 平臺簡介 步驟 回到頂部(go to top) 作者資訊 作者: 彭東林 郵箱:[email protected] QQ:4

基於tiny4412的Linux核心移植(支援device tree)(一)

https://www.cnblogs.com/pengdonglin137/p/5137941.html 閱讀目錄(Content) 作者資訊 平臺簡介 概述 步驟 回到頂部(go to top) 作者資訊 作者: 彭東林 郵箱:[email protected] Q