您的位置:首页 > 运维架构 > Linux

imx6q处理器,linux操作系统平台搭建 从eMMC启动系统

2016-08-23 21:17 381 查看
[摘要:本文是参考http://blog.csdn.net/girlkoo/article/details/44536447战http://blog.csdn.net/girlkoo/article/details/44626011那篇两篇文章,然后把移植进程战进修条记再次留下.]

本文是参考http://blog.csdn.net/girlkoo/article/details/44536447和http://blog.csdn.net/girlkoo/article/details/44626011这篇两篇文章,然后把移植过程和学习笔记再次留下.

本文是"imx6q处理器linux操作系统平台搭建 从SD卡启动系统"的姐妹篇,差别尽在uboot的环境变量略有不用,在完成imx6q处理器,linux操作系统平台搭建 从SD卡启动系统后,只需修改相应的环境变量即可完成从eMMC启动系统.

下面是针对uboot环境变量的修改,是在"imx6q处理器,linux操作系统平台搭建 从SD卡启动系统"uboot基础上进行修改的.

u-boot的修改

( 1 ) 修改rootfs的存放位置

"root=/dev/mmcblk1p1 rootwait\0"                \
修改为
"root=/dev/mmcblk0p1 rootwait\0"                \


( 2 ) 修改读取mmc的设备位置,为第3块设备(对应硬件的4号接口
"mmc dev 1; "   \
修改为
"mmc dev 3; "   \


修改完毕,重新编译uboot
./build.sh

暂时我只知道在烧写eMMC要用MFGtools工具,只能在Windows烧写,有其他方式,给我留言,非常感谢啊.

烧写开始喽

( 1 ) 准备食材,就是u-boot.bin uImage rootfs.tgz

( 2 ) 讲以上文件复制到 Mfgtools-Rel-1.1.0_121218_MX6Q_updateR/Profiles/MX6Q Linux Update/OS Firmware/files/linux/ 下

( 3 ) 修改烧写工具根目录下的 cfg.ini 文件 

修改成

[profiles]
chip = MX6Q Linux Update

[platform]
board = SabreSD

[LIST]
name =Linux-SabreSD-eMMC


就是修改的name
这个name对应 Mfgtools-Rel-1.1.0_121218_MX6Q_UPDATER/Profiles/MX6Q Linux Update/OS Firmware/ 下 ucl2.xml 的应用配置名称的烧写过程.

给开发板加电,就可以使用MFGtools工具烧写了.

烧写完成后,系统启动输出信息如下

U-Boot 2009.08-dirty ( 1??月 25 2016 - 20:05:12)

CPU: Freescale i.MX6 family TO1.2 at 792 MHz
Thermal sensor with ratio = 170
Temperature:   27 C, calibration data 0x5384a769
mx6q pll1: 792MHz
mx6q pll2: 528MHz                                                               
mx6q pll3: 480MHz                                                               
mx6q pll8: 50MHz                                                                
ipg clock     : 66000000Hz                                                      
ipg per clock : 66000000Hz                                                      
uart clock    : 80000000Hz                                                      
cspi clock    : 60000000Hz                                                      
ahb clock     : 132000000Hz                                                     
axi clock   : 264000000Hz                                                       
emi_slow clock: 132000000Hz                                                     
ddr clock     : 528000000Hz                                                     
usdhc1 clock  : 198000000Hz                                                     
usdhc2 clock  : 198000000Hz                                                     
usdhc3 clock  : 198000000Hz                                                     
usdhc4 clock  : 198000000Hz                                                     
nfc clock     : 24000000Hz                                                      
Board: i.MX6Q-SABRESD: unknown-board Board: 0x63012 [WDOG ]                     
Boot Device: MMC                                                                
I2C:   ready                                                                    
DRAM:   1 GB                                                                    
MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3                      
*** Warning - bad CRC or MMC, using default environment                         
                                                                                
In:    serial                                                                   
Out:   serial                                                                   
Err:   serial                                                                   
Net:   got MAC address from IIM: 00:00:00:00:00:00                              
FEC0 [PRIME]                                                                    
Hit any key to stop autoboot:  0                                                
mmc3(part 0) is current device                                                  
                                                                                
MMC read: dev # 3, block # 2048, count 8192 ... 8192 blocks read: OK            
## Booting kernel from Legacy Image at 10800000 ...                             
   Image Name:   Linux-3.0.35                                                   
   Image Type:   ARM Linux Kernel Image (uncompressed)                          
   Data Size:    3847528 Bytes =  3.7 MB                                        
   Load Address: 10008000                                                       
   Entry Point:  10008000                                                       
   Verifying Checksum ... OK                                                    
   Loading Kernel Image ... OK                                                  
OK                                                                              
                                                                                
Starting kernel ...                                                             
                                                                                
Uncompressing Linux... done, booting the kernel.                                
Linux version 3.0.35 (shirf@shirf-pc) (gcc version 4.8.3 20140320 (prerelease) 6
CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d                
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache               
Machine: Freescale i.MX 6Quad/DualLite/Solo Sabre-SD Board                      
Ignoring unrecognised tag 0x54410008                                            
Memory policy: ECC disabled, Data cache writealloc                              
CPU identified as i.MX6Q, silicon rev 1.2                                       
PERCPU: Embedded 7 pages/cpu @8c008000 s5440 r8192 d15040 u32768                
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 194560     
Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait        
PID hash table entries: 4096 (order: 2, 16384 bytes)                            
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)                
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)                  
Memory: 512MB 256MB = 768MB total                                               
Memory: 765844k/765844k available, 282732k reserved, 0K highmem                 
Virtual kernel memory layout:                                                   
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)                               
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)                               
    DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)                               
    vmalloc : 0xc0800000 - 0xf2000000   ( 792 MB)                               
    lowmem  : 0x80000000 - 0xc0000000   (1024 MB)                               
    pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)                               
    modules : 0x7f000000 - 0x7fe00000   (  14 MB)                               
      .init : 0x80008000 - 0x8003c000   ( 208 kB)                               
      .text : 0x8003c000 - 0x80a9a220   (10617 kB)                              
      .data : 0x80a9c000 - 0x80affce0   ( 400 kB)                               
       .bss : 0x80affd04 - 0x80b2db4c   ( 184 kB)                               
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1         
Preemptible hierarchical RCU implementation.                                    
NR_IRQS:624                                                                     
MXC GPIO hardware                                                               
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms        
arm_max_freq=1GHz                                                               
MXC_Early serial console at MMIO 0x2020000 (options '115200')                   
bootconsole [ttymxc0] enabled                                                   
Console: colour dummy device 80x30                                              
Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)                        
pid_max: default: 32768 minimum: 301                                            
Mount-cache hash table entries: 512                                             
CPU: Testing write buffer coherency: ok                                         
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available    
CPU1: Booted secondary processor                                                
CPU2: Booted secondary processor                                                
CPU3: Booted secondary processor                                                
Brought up 4 CPUs                                                               
SMP: Total of 4 processors activated (6324.22 BogoMIPS).                        
print_constraints: dummy:                                                       
NET: Registered protocol family 16                                              
print_constraints: vddpu: 725 <--> 1300 mV at 700 mV fast normal                
print_constraints: vddcore: 725 <--> 1300 mV at 1150 mV fast normal             
print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal              
print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal             
print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal              
print_constraints: vdd3p0: 2625 <--> 3400 mV at 3000 mV fast normal             
hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.                   
hw-breakpoint: 1 breakpoint(s) reserved for watchpoint single-step.             
hw-breakpoint: maximum watchpoint size is 4 bytes.                              
L310 cache controller enabled                                                   
l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x32070000, Cache size: 1048576 B  
bio: create slab <bio-0> at 0                                                   
mxs-dma mxs-dma-apbh: initialized                                               
print_constraints: SPKVDD: 4200 mV                                              
print_constraints: vmmc: 3300 mV                                                
SCSI subsystem initialized                                                      
spi_imx imx6q-ecspi.0: probed                                                   
usbcore: registered new interface driver usbfs                                  
usbcore: registered new interface driver hub                                    
usbcore: registered new device driver usb                                       
Freescale USB OTG Driver loaded, $Revision: 1.55 $                              
mc_pfuze 1-0008: recv failed!:-5,c8                                             
mc_pfuze: probe of 1-0008 failed with error -1                                  
imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)           
imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)           
mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2 driver probed                       
mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2 dphy version is 0x3130302a          
MIPI CSI2 driver module loaded                                                  
Advanced Linux Sound Architecture Driver Version 1.0.24.                        
Bluetooth: Core ver 2.16                                                        
NET: Registered protocol family 31                                              
Bluetooth: HCI device and connection manager initialized                        
Bluetooth: HCI socket layer initialized                                         
Bluetooth: L2CAP socket layer initialized                                       
Bluetooth: SCO socket layer initialized                                         
cfg80211: Calling CRDA to update world regulatory domain                        
max17135 2-0048: PMIC MAX17135 for eInk display                                 
i2c-core: driver [max17135] using legacy suspend method                         
i2c-core: driver [max17135] using legacy resume method                          
Switching to clocksource mxc_timer1                                             
NET: Registered protocol family 2                                               
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)               
TCP established hash table entries: 131072 (order: 8, 1048576 bytes)            
TCP bind hash table entries: 65536 (order: 7, 786432 bytes)                     
TCP: Hash tables configured (established 131072 bind 65536)                     
TCP reno registered                                                             
UDP hash table entries: 512 (order: 2, 16384 bytes)                             
UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)                        
NET: Registered protocol family 1                                               
RPC: Registered named UNIX socket transport module.                             
RPC: Registered udp transport module.                                           
RPC: Registered tcp transport module.                                           
RPC: Registered tcp NFSv4.1 backchannel transport module.                       
PMU: registered new PMU device of type 0                                        
Static Power Management for Freescale i.MX6                                     
wait mode is enabled for i.MX6                                                  
cpaddr = 0 suspend_iram_base=f2900000                                           
PM driver module loaded                                                         
IMX usb wakeup probe                                                            
add wake up source irq 75                                                       
IMX usb wakeup probe                                                            
cpu regulator mode:ldo_enable                                                   
i.MXC CPU frequency driver                                                      
JFFS2 version 2.2. (NAND) ?© 2001-2006 Red Hat, Inc.                            
msgmni has been set to 1495                                                     
alg: No test for stdrng (krng)                                                  
io scheduler noop registered                                                    
io scheduler deadline registered                                                
io scheduler cfq registered (default)                                           
mxc_mipi_dsi mxc_mipi_dsi: i.MX MIPI DSI driver probed                          
MIPI DSI driver module loaded                                                   
mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver ldb                        
_regulator_get: get() with no identifier                                        
imx-ipuv3 imx-ipuv3.1: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)    
Console: switching to colour frame buffer device 128x48                         
mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver ldb                        
mxc_sdc_fb mxc_sdc_fb.2: register mxc display driver lcd                        
mxc_sdc_fb mxc_sdc_fb.3: register mxc display driver ldb                        
mxc_sdc_fb mxc_sdc_fb.3: ipu1-di0 already in use                                
mxc_sdc_fb: probe of mxc_sdc_fb.3 failed with error -16                         
imx-sdma imx-sdma: loaded firmware 1.1                                          
imx-sdma imx-sdma: initialized                                                  
Serial: IMX driver                                                              
imx-uart.2: ttymxc2 at MMIO 0x21ec000 (irq = 60) is a IMX                       
imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX                       
console [ttymxc0] enabled, bootconsole disabled                                 
console [ttymxc0] enabled, bootconsole disabled                                 
loop: module loaded                                                             
Wait for CR ACK error!                                                          
sata phy rx_pll is stable!                                                      
No sata disk.                                                                   
m25p80 spi0.0: unrecognized JEDEC id ffffff                                     
GPMI NAND driver registered. (IMX)                                              
vcan: Virtual CAN interface driver                                              
CAN device driver interface                                                     
flexcan netdevice driver                                                        
FEC Ethernet Driver                                                             
fec_enet_mii_bus: probed                                                        
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver                      
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller                     
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1              
fsl-ehci fsl-ehci.0: irq 75, io base 0x02184000                                 
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00                                 
hub 1-0:1.0: USB hub found                                                      
hub 1-0:1.0: 1 port detected                                                    
add wake up source irq 72                                                       
fsl-ehci fsl-ehci.1: Freescale On-Chip EHCI Host Controller                     
fsl-ehci fsl-ehci.1: new USB bus registered, assigned bus number 2              
fsl-ehci fsl-ehci.1: irq 72, io base 0x02184200                                 
fsl-ehci fsl-ehci.1: USB 2.0 started, EHCI 1.00                                 
hub 2-0:1.0: USB hub found                                                      
hub 2-0:1.0: 1 port detected                                                    
Initializing USB Mass Storage driver...                                         
usbcore: registered new interface driver usb-storage                            
USB Mass Storage support registered.                                            
ARC USBOTG Device Controller driver (1 August 2005)                             
mousedev: PS/2 mouse device common for all mice                                 
input: gpio-keys as /devices/platform/gpio-keys/input/input0                    
input: max11801_ts as /devices/platform/imx-i2c.1/i2c-1/1-0048/input/input1     
egalax_ts 1-0004: egalax_ts: failed to read firmware version                    
egalax_ts: probe of 1-0004 failed with error -5                                 
egalax_ts 2-0004: egalax_ts: failed to read firmware version                    
egalax_ts: probe of 2-0004 failed with error -5                                 
usb 2-1: new high speed USB device number 2 using fsl-ehci                      
elan - Read Hello Packet Failed                                                 
elan-touch: probe of 2-0010 failed with error -22                               
i2c-core: driver [isl29023] using legacy suspend method                         
i2c-core: driver [isl29023] using legacy resume method                          
snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc0                      
i2c /dev entries driver                                                         
Linux video capture interface: v2.00                                            
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video16            
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video17            
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video18            
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video19            
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video20            
hub 2-1:1.0: USB hub found                                                      
hub 2-1:1.0: 4 ports detected                                                   
mag3110 2-000e: check mag3110 chip ID                                           
mag3110 2-000e: read chip ID 0xfffffffb is not equal to 0xc4!                   
mag3110: probe of 2-000e failed with error -22  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息