娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

u-boot-2011.06移植

發布者:Meshulun最新更新時間:2024-07-10 來源: elecfans關鍵字:u-boot  移植 手機看文章 掃描二維碼
隨時隨地手機看文章

u-boot-2011.06雖然支持一些常見的開發板,但如果u-boot-2011.06不支持我們手上的開發板,那就要找到與我們的開發板最接近的u-boot-2011.06所支持的開發板,在這個開發板的基礎上進行移植。u-boot-2011.06所支持的smdk2410開發板是最接近我的開發板的,所以我就在該此基礎上進行修改、移植。

 

在移植之前,我們還需要安裝、配置eldk,用于編譯u-boot。下面我們就先介紹一下eldk的安裝與配置:

1.下載eldk

        在ftp://ftp.denx.de/pub/eldk/選擇任一版本的eldk并下載,我選擇的是eldk4.2版本的arm-2008-11-24.iso文件。把該文件下載到/home/zhaocj/download/目錄下。

2.在root權限下安裝eldk

        創建掛載點:

mkdir   /mnt/dvdrom

        掛載光驅:

mount  –o loop /home/zhaocj/download/arm-2008-11-24.iso/mnt/dvdrom

        安裝eldk:

cd   /mnt/dvdrom

./install –d /opt/eldk4.2/

       這樣eldk就安裝到了/opt/eldk4.2目錄下。

3.設置環境變量

cd  ~

gedit   .bashrc

        在最后添加如下內容:

export  CROSS_COMPILE=arm-linux-

export  PATH=/opt/eldk4.2/bin: /opt/eldk4.2/usr/bin:$PATH

        保存并退出,然后執行:

source  .bashrc

        重啟電腦就完成了eldk的安裝。

 

       下面就介紹u-boot-2011.06的移植,在這里我把我的開發板命名為gq2440:

1.下載u-boot

        在ftp://ftp.denx.de/pub/u-boot/下載目前最新的u-boot版本(即u-boot-2011.06.tar.bz2)到我的用戶主目錄下。

2.解壓u-boot

cd  ~

        把u-boot-2011.06解壓到當前目錄下

tar  –xvjf u-boot-2011.06.tar.bz2

cd  u-boot-2011.06

3.在u-boot中添加我的開發板信息

emacs  boards.cfg

       打開boards.cfg文件,在第70行(smdk2410 arm arm920t – samsung s3c24x0)的下面添加一行,內容如下:

gq2440 arm arm920t – samsung s3c24x0

       保存并退出。

4.通過復制的方式添加我的開發板頭文件

cp include/configs/smdk2410.h include/configs/gq2440.h

5.通過復制的方式添加我的開發板文件夾

cp –r board/samsung/smdk2410 board/samsung/gq2440

       更改文件名

mv board/samsung/gq2440/smdk2410.c board/samsung/gq2440/gq2440.c

       修改Makefile文件

emacs board/samsung/gq2440/Makefile

       打開Makefile文件,在第28行中,把COBJS :=smdk2410.o改為:

COBJS:=gq2440.o

       保存并退出。

6.編譯

make   distclean

make   gq2440_config

make

      

        如果上述過程沒有出錯的話,會在u-boot的目錄下出現新的u-boot.bin文件。

2 NorFlash啟動移植方法

.修改宏定義

打開include/configs/gq2440.h文件

第38行“#define CONFIG_S3C2410        ”改為:

38:#define CONFIG_S3C2440         

目的是告之系統本開發板使用的是S3C2440處理器

 

第131行“#define CONFIG_SYS_PROMPT     'SMDK2410 # '”改為:

131:#define CONFIG_SYS_PROMPT      'gq2440# '

目的是使命令行提示符顯示為“gq2440# ”。

 

第185行“#define CONFIG_FLASH_CFI_LEGACY”改為:

185:#define CONFIG_SYS_CFI_FLASH_CONFIG_REGS    {0xFFFF}

因為在u-boot-2011.06中,使用的是CFI的NorFlash接口,所以不需要定義CONFIG_FLASH_CFI_LEGACY,而是要定義CONFIG_SYS_CFI_FLASH_CONFIG_REGS。

 

第191行“#define CONFIG_SYS_MAX_FLASH_SECT (19)”改為:

191:#define CONFIG_SYS_MAX_FLASH_SECT   (35)

因為本開發板使用的NorFlash是EN29LV160AB,它有35個扇區

 

第212行“#define CONFIG_NAND_S3C2410”改為:

212:#define CONFIG_NAND_S3C2440

 

第213行“#define CONFIG_SYS_S3C2410_NAND_HWECC”改為:

213:#define CONFIG_SYS_S3C2440_NAND_HWECC

 

2.修改系統時鐘頻率

打開arch/arm/cpu/arm920t/start.s文件

第164行“# if defined(CONFIG_S3C2410)”改為:

164:# if defined(CONFIG_S3C2440)

 

第165行“ldr       r1, =0x3ff”改為:

165:ldr r1, =0x7fff

目的是屏蔽所有子中斷。

 

第173行“mov     r1, #3”改為:

173:mov      r1, #5

目的是使FCLK:HCLK:PCLK= 1:4:8。

 

打開board/samsung/gq2440/gq2440.c文件

第42行至第44行的內容改為:

42:#define M_MDIV   92

43:#define M_PDIV    1

44:#define M_SDIV    1

本開發板的輸入晶振頻率為12MHz,通過上面的修改,則MPLL頻率為400MHz。

 

第54行至第56行的內容改為:

54:#define U_M_MDIV     56

55:#define U_M_PDIV      2

56:#define U_M_SDIV      2

通過上面的修改,則UPLL頻率為48MHz。

 

3.修改內存SDRAM時序

打開board/samsung/gq2440/lowlevel_init.s文件

第54行至第126行的內容改為:

54:#define B1_BWSCON          (DW16)

55:#define B2_BWSCON          (DW16)

56:#define B3_BWSCON          (DW16)

57:#define B4_BWSCON          (DW32)

58:#define B5_BWSCON          (DW16)

59:#define B6_BWSCON          (DW32)

60:#define B7_BWSCON          (DW32)

61:

62:

63:#define B0_Tacs                   0x3

64:#define B0_Tcos                   0x3

65:#define B0_Tacc                   0x7

66:#define B0_Tcoh                  0x3

67:#define B0_Tah                    0x3

68:#define B0_Tacp                  0x1

69:#define B0_PMC                  0x0

70:

71:

72:#define B1_Tacs                   0x1

73:#define B1_Tcos                   0x1

74:#define B1_Tacc                   0x6

75:#define B1_Tcoh                  0x1

76:#define B1_Tah                    0x1

77:#define B1_Tacp                  0x0

78:#define B1_PMC                  0x0

79:

80:#define B2_Tacs                   0x1

81:#define B2_Tcos                   0x1

82:#define B2_Tacc                   0x6

83:#define B2_Tcoh                  0x1

84:#define B2_Tah                    0x1

85:#define B2_Tacp                  0x0

86:#define B2_PMC                  0x0

87:

88:#define B3_Tacs                   0x1

89:#define B3_Tcos                   0x1

90:#define B3_Tacc                   0x6

91:#define B3_Tcoh                  0x1

92:#define B3_Tah                    0x1

93:#define B3_Tacp                  0x0

94:#define B3_PMC                  0x0

95:

96:#define B4_Tacs                   0x1

97:#define B4_Tcos                   0x1

98:#define B4_Tacc                   0x6

99:#define B4_Tcoh                  0x1

100:#define B4_Tah                  0x1

101:#define B4_Tacp                 0x0

102:#define B4_PMC                0x0

103:

104:#define B5_Tacs                 0x1

105:#define B5_Tcos                 0x1

106:#define B5_Tacc                 0x6

107:#define B5_Tcoh                0x1

108:#define B5_Tah                  0x1

[1] [2] [3] [4] [5]
關鍵字:u-boot  移植 引用地址:u-boot-2011.06移植

上一篇:ALSA聲卡10_從零編寫之數據傳輸_學習筆記
下一篇:攝像頭驅動學習

推薦閱讀最新更新時間:2025-04-23 20:13

U-Boot移植(18)網卡dm9000aep移植總結
總結: 主要修改三個文件: 1、/u-boot-1.1.6/include/configs/100ask24x0.h 2、/u-boot-1.1.6/board/100ask24x0/lowlevel_init.S 3、/u-boot-1.1.6/drivers/dm9000x.c 補充:4、/u-boot-1.1.6/drivers/dm9000x.h 把移植好的u-boot-1.1.6重新打成壓縮包,便于收藏。 如下: tar cjf u-boot-1.1.6-new.tar.bz2 u-boot-1.1.6
[單片機]
基于S3C6410處理器的U-Boot SD卡啟動的移植分析功能
通用Bootloader(Universal Bootloader,U-Boot)是系統上電后執行的第一段代碼,其作用主要包括初始化硬件環境以及加載執行操作系統內核。在進行系統安裝時,U-Boot通常需要使用專用工具燒寫到FLASH中,內核及文件系統則通過U-Boot命令進行燒寫,該過程操作繁瑣,并且容易出錯,不適宜系統的大量安裝。 S3C6410是三星公司生產的一款基于ARM11架構的通用嵌入式處理器,其啟動方式除了傳統的Flash啟動模式外,還支持從SD 卡中啟動系統。本文基于S3C6410處理器,分析了從SD卡啟動系統的原理,并對U-Boot源碼進行修改以支持該啟動方式,在此基礎上進一步擴展了U-Boot的功能,使其
[單片機]
基于S3C6410處理器的<font color='red'>U-Boot</font> SD卡啟動的<font color='red'>移植</font>分析<font color='red'>與</font>功能
OK6410A 開發板 (三) 13 u-boot-2021.01 boot 解析 U-boot 鏡像運行部分 boot 詳細解析2 relocate_vectors
從鏈接角度分析 u-boot.bin 的構成 從運行的角度分析 u-boot.bin 前 64byte 的 relocate relocate_vectors 的實現 #ifdef CONFIG_HAS_VBAR // 雖然走的是這一套,但是找到的協處理器cp15的C12的實現(DDI0301H_arm1176jzfs_r0p7_trm.pdf)和下面的內容對不上 // 那就分析 #else 那條路 // 這條路 其實就是 架構實現(ARM1176) 對(#else那條路) 做出的優化 // 后面在 DDI0301H_arm1176jzfs_r0p7_trm.pdf P254 找到了,繼續分析這條路
[單片機]
Realtek 8192cu 驅動移植到 Android 2.2
開發板是三星 S5PV210,Android 2.2 需要到 Realtek 官網下載最新的驅動 v3.1.2590。最開始用v3.0 的驅動,這個是Realtek工程師直接提供的,遇到2個問題:(1)加載驅動模塊(insmod)時,報內核虛擬內存分配失敗,要求增加虛擬內存。開發板物理內存為1G,啟動內核時加vmalloc=512M后,該問題消失,驅動模塊能夠成功加載,但出現新的問題:(2)在掃描AP時,Android界面顯示“不能掃描”,驅動程序打印log顯示下載firmware失敗,查看驅動程序源碼發現,8192cu的驅動中包含了firmware二進制,運行時通過查表來取得firmware,但輪詢超時,導致模塊初始化失敗
[單片機]
迅為imx6開發板QT系統移植FFmpeg-編譯x264
FFmpeg(Fast Forward Mpeg)是一種可以用來記錄、轉換數字音頻、視頻,并能將其轉化為流的多媒體視頻處理工具,擁有視頻采集功能、視頻格式轉換、視頻抓圖等功能。本文檔介紹如何將 ffmpeg 移植到ARM 平臺。相關的配套資料在網盤資料的“iTOP-i.MX6 開發板資料匯總(不含光盤資料)8_iTOP-i.MX6 開 發板 Linux 系統開發資料9-Linux 系統移植 FFmpeg”目錄下。開發板使用迅為 i.MX6ULL 終結者和 USB 免驅攝像頭,交叉編譯工具為 arm-2009q3,開發板里面的系統是升級版 QT5.7 文件系統。 編譯 x264 獲取 x264 源碼,可以從網站 h t t p :
[單片機]
迅為imx6開發板QT系統<font color='red'>移植</font>FFmpeg-編譯x264
013_STM32程序移植之_DS18B20
1. 測試環境:STM32C8T6 2. 測試模塊:DS18B20模塊 3. 測試接口: 1. DS18B20模塊接口: DS18B20引腳 單片機引腳 VCC--------------------5V GND-------------------GND DATA------------------PB12 2. 串口使用串口一,波特率9600 單片機引腳 CH340引腳 VCC--------------------VCC GND-------------------GND PA9--------------------RXD PA10-------------------TXD 移植測試 測試串口一程序
[單片機]
013_STM32程序<font color='red'>移植</font>之_DS18B20
U--BOOT移植----S3C24X0_CLOCK_POWER和ICACHE_ENABLE、DCACHE_ENABLE函數
移植U--BOOT的過程中需要修改board_init()函數以設置系統時鐘,在board_init源代碼中出現了s3c24x0_CLOCK_POWER定義指針,那么什么是s3c24x0_CLOCK_POWER呢?s3c24x0_CLOCK_POWER其實是一個結構體,被定義在s3c24x0.h中,大概在120的位置有其定義,其源代碼為: typedef struct { S3C24X0_REG32 LOCKTIME; S3C24X0_REG32 MPLLCON; S3C24X0_REG32 UPLLCON; S3C24X0_REG32 CLKCON; S3C24X0_REG32 CLKSLOW;
[單片機]
基于S3C2440和DM9000移植LWIP
終于開始我的第一篇筆記了。這回要做的事情,是以太網的移植。 使用mini2440已經有一段時間了。諸如裸機的LED,鍵盤開關等等等等也都試驗過了,uCOS,WinCE也是淺嘗了一下。如今想到了以太網。 由于mini2440的板上集成了一個DM9000的網卡,并且在CE系統里面成功的使用以太網與PC連接了。于是自然而然的想,能不能在uCOS下也實現以太網接口呢? 一上來什么都不懂,于是找一些資料,在這里要謝謝焦海波老師所著的嵌入式網絡系統設計一書,移植過程中很多資料都來源于這本書。其次是mikenoodle的單片機驅動DM9000網卡一文,里面詳細地講述如何在2440裸機下驅動DM9000網卡。 首先明確我們需要做的事情是什么?為了
[單片機]
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 开江县| 平谷区| 重庆市| 阳原县| 昭平县| 盘山县| 屏东市| 大余县| 漳浦县| 汤原县| 宁安市| 孟州市| 商水县| 昔阳县| 汶川县| 卢湾区| 屯留县| 岚皋县| 上高县| 乌苏市| 南充市| 武安市| 龙州县| 桃源县| 古田县| 托克逊县| 灯塔市| 沾益县| 仁寿县| 大荔县| 普陀区| 石首市| 泽普县| 涿州市| 建瓯市| 昌邑市| 峨眉山市| 承德市| 普兰店市| 平泉县| 博白县|