① 根檔案系統直接編譯進核心
直接用TQ2440提供的原始碼linux2.6.30.4, 然後用其提供的busybox.1.16.0
在(make menuconfig中)沒有選中Initial Ram... 時是這樣的
看到這裡,大約知道除了根檔案系統有問題外,其他沒有問題.
將檔案系統編譯進去,遇見問題:
make zImage ARCH=arm後,下載zImage.bin到TQ2440,啟動系統後居然是這樣:
看來這個問題不小,直接bad gzip了
Question1: 該如何解決呢?
不管它繼續用uboot的另一個功能 Test Linux Image(zImage) :
各類東西的初始化.....
不會吧,居然進入console了,這麼說就是zImage的壓縮頭部有問題而已 ??
但是沒有多久居然又重啟進入uboot了,看來這個還是個問題.
========================================================
Question2: 繼續輸入命令居然可以,那麼說明busybox和根檔案系統也是沒有問題的 ??
既然如此,那麼關閉看門狗試一試,就不會重啟了,這麼說是看門狗問題:
那好直接在命令列關閉它:
$ echo V > /dev/watchdog
可以參考下面這個Blog:
以及下面的這個:
我就簡單的處理一下,直接在編譯的時候close watchdog:
直接測試(zImage直接到記憶體)是沒有問題了.那麼下載到NandFlash有沒有問題呢:
copy linux kernel ... to 0x3000800...
直接就是data abort,此時PC = 0x3000b424,那麼這個是屬於哪個區域呢? 是頭部(解壓縮部分) ? 還是?
這裡是沒有用mkimage將zImage製作成uImage,沒有頭部(大小64B = 48H),直接用TQ2440光碟提供的工具即可.
其用法看:
基本如下摘抄:
1.首先檢視mkimage的命令引數[[email protected] tools]# ./mkimage Usage: ./mkimage -l image
用mkimage製作好後,下載,boot system 即可.
Qusetion3: 這裡還是遇到了問題: 如何將uImage下載到TQ2440中?
這裡用u-boot選單無法完成,
沒有下載uImage的選項,當然可以將uImage rename成zImage.bin,但是這樣的話,在下載後去啟動System(即選項8)的時候就不對了
那麼就用u-boot的命令:
tftp Address(0x30008000) Filename(uImage)
這樣就可以了.
相關推薦
① 根檔案系統直接編譯進核心
直接用TQ2440提供的原始碼linux2.6.30.4, 然後用其提供的busybox.1.16.0 在(make menuconfig中)沒有選中Initial Ram... 時是這樣的 看到這裡,大約知道除了根檔案系統有問題外,其他沒有問題. 將檔案系統編
對比直接編譯進核心和模組形式
Compiling directly into a kernel vs. modules You have two options for adding functionality to the kernel: building functions into the ke
關於UBOOT,LINUX核心編譯,根檔案系統的15個弱智問題(轉)
(1)核心預設執行地址和載入地址在哪裡設定? (2)從FLASH什麼地址找核心和根檔案系統,UBOOT在哪裡設定? (3)啟動時UBOOT將根檔案系統和核心拷貝到RAM中何處在哪裡設定? (4)UBOOT 如何知道核心與根檔案系統的格式和大小? (5)核心啟動引數在編譯UBOOT時候哪裡指定? (6)核心
檔案系統編譯進核心
1、利用busybox製作根檔案目錄。(需要有init 和 linuxrc)2、makemenuconfig 在general setup 中設定 initial ram filesystem and RAM disk 後指定檔案系統原始檔路徑.3、makemenuconfi
關於UBOOT,LINUX核心編譯,根檔案系統的15個弱智問題
(1)核心預設執行地址和載入地址在哪裡設定? (2)從FLASH什麼地址找核心和根檔案系統,UBOOT在哪裡設定? (3)啟動時UBOOT將根檔案系統和核心拷貝到RAM中何處在哪裡設定? (4)UBOOT 如何知道核心與根檔案系統的格式和大小? (5)核心啟動引數在編譯UBO
怎樣從網路上核心和根檔案系統啟動開發板
首先在ubuntu虛擬機器上要有nfs伺服器 1.啟動開發板uboot,輸入 下面的命令 set bootargs console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.19:/work/nfs_root/tmp/fs_mini
移植好uboot和基於initramfs根檔案系統Linux核心的開發板的啟動過程
我們移植好uboot和Linux核心之後,當我們重啟之後,開發板首先做的事情就是將nandflash前4K的內容複製到SRAM中去,由於SRAM只有4K大小,所以我們必須將初始化CPU、記憶體、中斷、關閉開門狗以及nandflash中uboot拷貝到SDRAM中的的程式都放
《Linux啟動過程分析》核心掛載根檔案系統
說明:本文基於Linux2.6.29核心分析;其他核心版本僅供參考。 前邊通過原始碼情景分析,看過了匯流排、裝置、驅動及其發現機制,Linux2.6核心udev裝置節點建立相關;對於檔案系統,一直望而生畏,但核心學習、這部分又不可能繞的過去。目前對VFS中使用的has
Linux核心移植和根檔案系統製作(詳細步驟精講)
start_kernel是所有 Linux 平臺進入系統核心初始化後的入口函式,它主要完成剩餘的與硬體平臺相關的初始化工作,在進行一系列與核心相關的初始化後,呼叫第一個使用者程序-init 程序並等待使用者程序的執行,這樣整個 Linux 核心便啟動完畢。該函式所做的具體工作有:呼叫 setup_arch
開發板通過網路載入核心、裝置樹、根檔案系統
開發板要通過網路載入核心、裝置樹、檔案系統,首先要搭建好tftp和nfs服務1.搭建tftp伺服器tftp服務安裝//----虛擬機器上安裝tftp服務$ sudo dpkg -s tftpd-hpa //檢查是否安裝tftp server$ sudo apt-g
移植u-boot-2011.03到S3C2440(utu2440)的方法與步驟###8. u-boot引導啟動nand flash中核心和根檔案系統cramfs和使用者檔案系統yaffs2支援
rivers/rtc/hctosys.c: unable to open rtc device (rtc0)uncorrectable error : <3>uncorrectable error : <3>end_request: I/O error, dev mtdblock2,
Linux核心驅動學習(二)----根檔案系統的構成 (root filesystem)
1、建立根檔案系統目錄和檔案 1.1建立目錄 1.2建立裝置檔案(命令mknod);必須建立裝置檔案---consle\null 1.3建立配置檔案---複製已有的/etc目錄下的檔案
openwrt的編譯系統是如何製作根檔案系統的
答:分析以下makefile即可獲取整個過程 以nxp layerscape系統的編譯過程為例 1.分析target/linux/layerscape/image/Makefile的最後一句,這是一個好的開端 $(eval $(call BuildImage)) 2.巨集Bu
嵌入式linux 核心和根檔案系統燒寫方式簡介
總體來說,嵌入式Linux核心和根檔案的引導與PC機差不多。嵌入式linux核心和根檔案系統可以存放在各種可能的儲存裝置中,一般情況下我們將核心和根檔案系統直接燒入到Flash中(包括NOR和NAND flash),這種方法的缺點是在核心和根檔案系統出現修改時我們就不得不得
移植核心學習筆記2-----修改分割槽及製作根檔案系統
1、製作分割槽 (1)分析 在上節實驗中出現以下問題:無法掛載根檔案系統 在以前u-boot燒寫檔案系統時是燒寫到某個地方,以前的分割槽是下面那樣劃分的,劃分為4個分割槽,但是上面有8個分割槽 分割槽修改參考(分割槽是在程式碼裡面寫死的,u-boot怎麼設定不會影響核心
linux根檔案系統與核心合二為一
《ARM Linux開發-warewin 2G/3G無線傳輸(DTU)和路由器—筆記》 硬體平臺 :AT91SAM9260 核心版本:Linux-2.6.36 核心檔案和根檔案系統在Flash中一起壓縮放置可節省大量的Flash儲存空間,也便於韌體的存檔和升級,把根檔案系
嵌入式Linux-根檔案系統2_(利用交叉編譯工具鏈,構建/lib目錄)
光有應用程式(命令)是不夠的,因為應用程式本身需要使用C庫的庫函式,因此還必需製作for ARM的C庫,並將其放置於/lib目錄。my god,要自己寫C庫的原始碼嗎?不用!還記得交叉編譯工具鏈的3個組成部分嗎?交叉編譯器、for ARM的C庫和二進位制工具。我們只需要把嵌入式的C庫拷貝過來就可
uboot、核心、根檔案系統啟動流程
0.設定cpu為svc模式,關中斷 1. 為核心的解壓做準備(記憶體,中斷等等) 2.核心自解壓 (vmlinux.lds) 3.跳轉到入口地址執行(head.S--->main.c)start_kernel執行核心 4.硬體的初始化(初始mm mmu 中斷(request_irq),軟
uboot中利用TFTP和NFS載入核心映象和根檔案系統
origin: http://www.cnblogs.com/cjjnjust/articles/1754849.html 主機說明: 實驗板說明: MPC8349itx開發板: IP: 59.64.155.244 閘道器 59.64.155.1 開發板eth0為
如何把核心、uboot、和根檔案系統下載到開發板中
1、首先準備好所需要的檔案:u-boot、uImage、rootfs.img。 2、下載u-boot: tftp 0x40000000 u-boot.bin nand erase 0 0x60000 nand write ox40000000