<menu id="w8yyk"><menu id="w8yyk"></menu></menu>
  • <dd id="w8yyk"><nav id="w8yyk"></nav></dd>
    <menu id="w8yyk"></menu>
    <menu id="w8yyk"><code id="w8yyk"></code></menu>
    <menu id="w8yyk"></menu>
    <xmp id="w8yyk">
    <xmp id="w8yyk"><nav id="w8yyk"></nav>
  • 網站首頁 > 物聯資訊 > 技術分享

    AM335x(TQ335x)學習筆記――掛載Ramdisk

    2016-09-28 00:00:00 廣州睿豐德信息科技有限公司 閱讀
    睿豐德科技 專注RFID識別技術和條碼識別技術與管理軟件的集成項目。質量追溯系統、MES系統、金蝶與條碼系統對接、用友與條碼系統對接

    上篇文章中我們已經能夠通過u-boot啟動內核了,但是沒有能夠啟動成功,從內核的log中可以看出,內核啟動失敗的原因是沒有掛載到root文件系統,本文將使用busybox制作根文件系統并打包成ramdisk供u-boot啟動內核使用。

    (1)制作根文件系統

    使用busybox構建根文件系統的步驟可以參考本博客的另外一篇文章,該文章鏈接如下:

    S5PV210(TQ210)學習筆記——內核移植與文件系統構建

    需要補充的是,文章"S5PV210(TQ210)學習筆記——內核移植與文件系統構建"中記錄rootfs文件系統構建時漏掉了一步,沒有在etc/sysconfig/目錄下創建HOSTNAME文件,可以手動添加HOSTNAME文件,其內容為主機名稱,本文使用了tq335x。在rootfs目錄可以通過如下指令創建:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. echo tq335x > etc/sysconfig/HOSTNAME  

    本文在已制作好的rootfs基礎上,制作ramdisk。

     

    (2)制作ramdisk

    制作ramdisk的方式很多,最方便的是使用指令genext2fs。ubuntu操作系統上可以通過apt-get工具直接安裝genext2fs工具:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. sudo apt-get install genext2fs  

    其它操作系統也有類似的管理工具,這里就不一一列舉了,下面使用genext2fs打包rootfs目錄。命令如下:

     

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. genext2fs -b 4096 -d rootfs/ ramdisk  

    然后使用gzip命令壓縮ramdisk:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. gzip -9 -f ramdisk  

    執行完成該命令后可以得到文件ramdisk.gz。

     

    由于u-boot啟動內核使用的ramdisk需要有u-boot的image頭,故需要使用編譯u-boot時生成的工具mkimage將ramdisk.gz制作為ramdisk.img。其中,工具mkimage位于u-boot的tools目錄下,制作ramdisk.img的指令如下:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. u-boot-2014.10/tools/mkimage -A arm -O linux -T ramdisk -C none -a 0x88080000 -n "ramdisk" -d ramdisk.gz ramdisk.img  

    命令中mkimage前的路徑根據自己實際執行的路徑指定即可。

     

    這樣,就完成了u-boot可以使用的ramdisk制作,然后將ramdisk.img拷貝到SD卡的boot目錄下即可。

    (3)掛載ramdisk

    老式的ATAGS方式啟動內核時使用ATAG傳遞bootargs給內核,由于本文使用的dtb方式啟動內核,故采取dtb的chosen方式傳遞bootargs給內核。

    Step1: 修改內核配置

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. make ARCH=arm menuconfig  

    進入配置項:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. Boot options  --->  

    按N鍵取消配置項:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. [ ] Use appended device tree blob to zImage (EXPERIMENTAL)  

    官方內核默認啟用了該項配置。啟用該項配置后內核兼容老式的ATAGS方式內核啟動,關閉后則使用新式的dtb方式啟動,故此處禁用了此項配置。

     

    按ESC保存配置后退出menuconfig畫面,重新編譯內核:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j8  

    Step2:添加bootargs到dtb

     

    切換到內核目錄arch/arm/boot/dts/,拷貝am335x-evm.dts為tq335x.dts:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. cp am335x-evm.dts tq335x.dts  

    打開tq335x.dts,在memory項后通過chosen方式添加bootargs,添加內容如下:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. memory {  
    2.     device_type = "memory";  
    3.     reg = <0x80000000 0x10000000>; /* 256 MB */  
    4. };  
    5.   
    6. chosen {  
    7.     bootargs = "console=ttyO0,115200n8 root=/dev/ram0";  
    8. };  
    9.   
    10. ...  

    其中chosen節點是新添加的,memory節點是原有的。

     

    接下來重新編譯dtb:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- tq335x.dtb  

    將新編譯得到的tq335x.dtb拷貝到SD的boot目錄下。至此,準備工作就完成了,下面我們使用新制作的ramdisk.img和tq335x.dtb啟動內核。

     

    Step3:使用新制作的ramdisk.img和tq335x.dtb啟動內核

    將SD插到開發板上,給開發板上電(開發板切換到SD卡啟動模式),可以通過按任意鍵打斷內核啟動進入u-boot命令模式(由于之前沒有配置u-boot的bootcmd環境變量,而默認的u-boot環境無法啟動內核,故,開發板上電后不按鍵的話也會進入u-boot的命令行模式)。

    首先是加載內核到DRAM:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. load mmc 0 ${loadaddr} /boot/zImage  

    其中,${loadaddr}在u-boot的環境變量中默認指定為0x82000000,這里可以直接打數字。

     

    然后是加載dtb到DRAM:

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. load mmc 0 ${fdtaddr} /boot/tq335x.dtb  

    ${fdtaddr}的默認值是0x88000000。

     

    接下來加載ramdisk到DRAM:

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. load mmc 0 ${rdaddr} /boot/ramdisk.img  

    ${rdaddr}的默認值是0x88080000
    最后就是將ramdisk和dtb的加載地址作為參數啟動內核:

     

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. bootz ${loadaddr} ${rdaddr} ${fdtaddr}  

    至此,Linux內核已經能夠正常啟動并進入終端模式了。

    啟動Log如下:

    [cpp] view plain copy    在CODE上查看代碼片派生到我的代碼片
    1. Hit any key to stop autoboot:  0   
    2. U-Boot# load mmc 0 ${fdtaddr} /boot/tq335x.dtb  
    3. 34781 bytes read in 9 ms (3.7 MiB/s)  
    4. U-Boot# load mmc 0 ${loadaddr} /boot/zImage  
    5. 4377824 bytes read in 242 ms (17.3 MiB/s)  
    6. U-Boot# load mmc 0 ${rdaddr} /boot/ramdisk.img  
    7. 1120934 bytes read in 68 ms (15.7 MiB/s)  
    8. U-Boot# bootz ${loadaddr} ${rdaddr} ${fdtaddr}  
    9. Kernel image @ 0x82000000 [ 0x000000 - 0x42cce0 ]  
    10. ## Loading init Ramdisk from Legacy Image at 88080000 ...  
    11.    Image Name:   ramdisk  
    12.    Created:      2014-11-18  15:47:41 UTC  
    13.    Image Type:   ARM Linux RAMDisk Image (uncompressed)  
    14.    Data Size:    1120870 Bytes = 1.1 MiB  
    15.    Load Address: 88080000  
    16.    Entry Point:  88080000  
    17.    Verifying Checksum ... OK  
    18. ## Flattened Device Tree blob at 88000000  
    19.    Booting using the fdt blob at 0x88000000  
    20.    Loading Ramdisk to 8feee000, end 8ffffa66 ... OK  
    21.    Loading Device Tree to 8fee2000, end 8feed7dc ... OK  
    22.   
    23.   
    24. Starting kernel ...  
    25.   
    26.   
    27. [    0.000000] Booting Linux on physical CPU 0x0  
    28. [    0.000000] Linux version 3.17.2 (lilianrong@AY140721164813287e77Z) (gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) ) #1 SMP Tue Nov 18 22:49:31 CST 2014  
    29. [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d  
    30. [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache  
    31. [    0.000000] Machine model: TI AM335x EVM  
    32. [    0.000000] cma: Reserved 16 MiB at 9e800000  
    33. [    0.000000] Memory policy: Data cache writeback  
    34. [    0.000000]   HighMem zone: 1048574 pages exceeds freesize 0  
    35. [    0.000000] CPU: All CPU(s) started in SVC mode.  
    36. [    0.000000] AM335X ES2.1 (sgx neon )  
    37. [    0.000000] PERCPU: Embedded 9 pages/cpu @dfa9a000 s14336 r8192 d14336 u36864  
    38. [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129792  
    39. [    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/ram0  
    40. [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)  
    41. [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)  
    42. [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)  
    43. [    0.000000] Memory: 483692K/523264K available (5668K kernel code, 647K rwdata, 2208K rodata, 406K init, 8210K bss, 39572K reserved, 0K highmem)  
    44. [    0.000000] Virtual kernel memory layout:  
    45. [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)  
    46. [    0.000000]     fixmap  : 0xffc00000 - 0xffe00000   (2048 kB)  
    47. [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)  
    48. [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)  
    49. [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)  
    50. [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)  
    51. [    0.000000]       .text : 0xc0008000 - 0xc07b9478   (7878 kB)  
    52. [    0.000000]       .init : 0xc07ba000 - 0xc081f800   ( 406 kB)  
    53. [    0.000000]       .data : 0xc0820000 - 0xc08c1d08   ( 648 kB)  
    54. [    0.000000]        .bss : 0xc08c1d08 - 0xc10c68e0   (8211 kB)  
    55. [    0.000000] Hierarchical RCU implementation.  
    56. [    0.000000]  RCU restricting CPUs from NR_CPUS=2 to nr_cpu_ids=1.  
    57. [    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1  
    58. [    0.000000] NR_IRQS:16 nr_irqs:16 16  
    59. [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts  
    60. [    0.000000] Total of 128 interrupts on 1 active controller  
    61. [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz  
    62. [    0.000013] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns  
    63. [    0.000061] OMAP clocksource: timer1 at 24000000 Hz  
    64. [    0.000795] Console: colour dummy device 80x30  
    65. [    0.000847] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar  
    66. [    0.000856] ... MAX_LOCKDEP_SUBCLASSES:  8  
    67. [    0.000863] ... MAX_LOCK_DEPTH:          48  
    68. [    0.000870] ... MAX_LOCKDEP_KEYS:        8191  
    69. [    0.000878] ... CLASSHASH_SIZE:          4096  
    70. [    0.000885] ... MAX_LOCKDEP_ENTRIES:     32768  
    71. [    0.000892] ... MAX_LOCKDEP_CHAINS:      65536  
    72. [    0.000900] ... CHAINHASH_SIZE:          32768  
    73. [    0.000907]  memory used by lock dependency info: 5167 kB  
    74. [    0.000915]  per task-struct memory footprint: 1152 bytes  
    75. [    0.000956] Calibrating delay loop... 996.14 BogoMIPS (lpj=4980736)  
    76. [    0.079037] pid_max: default: 32768 minimum: 301  
    77. [    0.079438] Security Framework initialized  
    78. [    0.079564] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)  
    79. [    0.079576] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)  
    80. [    0.081769] CPU: Testing write buffer coherency: ok  
    81. [    0.082962] CPU0: thread -1, cpu 0, socket -1, mpidr 0  
    82. [    0.083084] Setting up static identity map for 0x8055f030 - 0x8055f0a0  
    83. [    0.086327] Brought up 1 CPUs  
    84. [    0.086347] SMP: Total of 1 processors activated.  
    85. [    0.086357] CPU: All CPU(s) started in SVC mode.  
    86. [    0.088983] devtmpfs: initialized  
    87. [    0.097743] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3  
    88. [    0.132789] omap_hwmod: tptc0 using broken dt data from edma  
    89. [    0.133139] omap_hwmod: tptc1 using broken dt data from edma  
    90. [    0.133467] omap_hwmod: tptc2 using broken dt data from edma  
    91. [    0.141252] omap_hwmod: debugss: _wait_target_disable failed  
    92. [    0.198964] pinctrl core: initialized pinctrl subsystem  
    93. [    0.201633] regulator-dummy: no parameters  
    94. [    0.231057] NET: Registered protocol family 16  
    95. [    0.239540] DMA: preallocated 256 KiB pool for atomic coherent allocations  
    96. [    0.241725] cpuidle: using governor ladder  
    97. [    0.241754] cpuidle: using governor menu  
    98. [    0.253658] OMAP GPIO hardware version 0.1  
    99. [    0.268591] omap-gpmc 50000000.gpmc: could not find pctldev for node /pinmux@44e10800/nandflash_pins_s0, deferring probe  
    100. [    0.268635] platform 50000000.gpmc: Driver omap-gpmc requests probe deferral  
    101. [    0.273243] No ATAGs?  
    102. [    0.273274] hw-breakpoint: debug architecture 0x4 unsupported.  
    103. [    0.316650] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver  
    104. [    0.318001] vbat: 5000 mV   
    105. [    0.318774] lis3_reg: no parameters  
    106. [    0.322209] SCSI subsystem initialized  
    107. [    0.323028] usbcore: registered new interface driver usbfs  
    108. [    0.323207] usbcore: registered new interface driver hub  
    109. [    0.327009] usbcore: registered new device driver usb  
    110. [    0.327877] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe  
    111. [    0.327917] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral  
    112. [    0.327972] omap_i2c 4802a000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c1_pins, deferring probe  
    113. [    0.327995] platform 4802a000.i2c: Driver omap_i2c requests probe deferral  
    114. [    0.332363] Switched to clocksource timer1  
    115. [    0.477595] NET: Registered protocol family 2  
    116. [    0.479415] TCP established hash table entries: 4096 (order: 2, 16384 bytes)  
    117. [    0.479601] TCP bind hash table entries: 4096 (order: 5, 147456 bytes)  
    118. [    0.480965] TCP: Hash tables configured (established 4096 bind 4096)  
    119. [    0.481157] TCP: reno registered  
    120. [    0.481186] UDP hash table entries: 256 (order: 2, 20480 bytes)  
    121. [    0.481375] UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)  
    122. [    0.482657] NET: Registered protocol family 1  
    123. [    0.484656] RPC: Registered named UNIX socket transport module.  
    124. [    0.484680] RPC: Registered udp transport module.  
    125. [    0.484690] RPC: Registered tcp transport module.  
    126. [    0.484699] RPC: Registered tcp NFSv4.1 backchannel transport module.  
    127. [    0.485566] Trying to unpack rootfs image as initramfs...  
    128. [    0.487045] rootfs image is not initramfs (no cpio magic); looks like an initrd  
    129. [    0.497016] Freeing initrd memory: 1092K (cfeee000 - cffff000)  
    130. [    0.497514] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available  
    131. [    0.501968] futex hash table entries: 256 (order: 2, 16384 bytes)  
    132. [    0.507634] VFS: Disk quotas dquot_6.5.2  
    133. [    0.507781] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)  
    134. [    0.510254] NFS: Registering the id_resolver key type  
    135. [    0.510637] Key type id_resolver registered  
    136. [    0.510653] Key type id_legacy registered  
    137. [    0.510794] jffs2: version 2.2. (NAND) (SUMMARY)  漏 2001-2006 Red Hat, Inc.  
    138. [    0.511229] msgmni has been set to 978  
    139. [    0.516624] io scheduler noop registered  
    140. [    0.516656] io scheduler deadline registered  
    141. [    0.516726] io scheduler cfq registered (default)  
    142. [    0.519057] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568  
    143. [    0.522800] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled  
    144. [    0.528945] omap_uart 44e09000.serial: no wakeirq for uart0  
    145. [    0.529540] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0  
    146. [    1.236732] console [ttyO0] enabled  
    147. [    1.245368] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20  
    148. [    1.277842] brd: module loaded  
    149. [    1.297230] loop: module loaded  
    150. [    1.303764] mtdoops: mtd device (mtddev=name/number) must be supplied  
    151. [    1.313662] usbcore: registered new interface driver asix  
    152. [    1.319456] usbcore: registered new interface driver ax88179_178a  
    153. [    1.326006] usbcore: registered new interface driver cdc_ether  
    154. [    1.332305] usbcore: registered new interface driver smsc95xx  
    155. [    1.338427] usbcore: registered new interface driver net1080  
    156. [    1.344489] usbcore: registered new interface driver cdc_subset  
    157. [    1.350791] usbcore: registered new interface driver zaurus  
    158. [    1.356854] usbcore: registered new interface driver cdc_ncm  
    159. [    1.364965] usbcore: registered new interface driver cdc_wdm  
    160. [    1.371056] usbcore: registered new interface driver usb-storage  
    161. [    1.377647] usbcore: registered new interface driver usbtest  
    162. [    1.388450] mousedev: PS/2 mouse device common for all mice  
    163. [    1.399599] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0  
    164. [    1.407152] 44e3e000.rtc: already running  
    165. [    1.411995] i2c /dev entries driver  
    166. [    1.415787] Driver for 1-wire Dallas network protocol.  
    167. [    1.428670] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec  
    168. [    1.438626] omap_hsmmc 48060000.mmc: unable to get vmmc regulator -517  
    169. [    1.446110] platform 48060000.mmc: Driver omap_hsmmc requests probe deferral  
    170. [    1.454198] ledtrig-cpu: registered to indicate activity on CPUs  
    171. [    1.461042] usbcore: registered new interface driver usbhid  
    172. [    1.466922] usbhid: USB HID core driver  
    173. [    1.472270] oprofile: using arm/armv7  
    174. [    1.476763] TCP: cubic registered  
    175. [    1.480243] Initializing XFRM netlink socket  
    176. [    1.484880] NET: Registered protocol family 17  
    177. [    1.489611] NET: Registered protocol family 15  
    178. [    1.494616] Key type dns_resolver registered  
    179. [    1.499266] omap_voltage_late_init: Voltage driver support not added  
    180. [    1.505960] sr_dev_init: No voltage domain specified for smartreflex0. Cannot initialize  
    181. [    1.514433] sr_dev_init: No voltage domain specified for smartreflex1. Cannot initialize  
    182. [    1.523926] ThumbEE CPU extension supported.  
    183. [    1.528444] Registering SWP/SWPB emulation handler  
    184. [    1.533522] SmartReflex Class3 initialized  
    185. [    1.547402] omap-gpmc 50000000.gpmc: GPMC revision 6.0  
    186. [    1.554563] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xd3  
    187. [    1.561211] nand: Samsung NAND 1GiB 3,3V 8-bit  
    188. [    1.565966] nand: 1024MiB, SLC, page size: 2048, OOB size: 64  
    189. [    1.571968] nand: error: CONFIG_MTD_NAND_OMAP_BCH not enabled  
    190. [    1.578104] omap2-nand: probe of omap2-nand.0 failed with error -22  
    191. [    1.691744] tps65910 0-002d: No interrupt support, no core IRQ  
    192. [    1.709178] vrtc: 1800 mV   
    193. [    1.712892] vrtc: supplied by vbat  
    194. [    1.719981] vio: at 1500 mV   
    195. [    1.723353] vio: supplied by vbat  
    196. [    1.730169] vdd_mpu: 912 <--> 1312 mV at 1325 mV   
    197. [    1.735377] vdd_mpu: supplied by vbat  
    198. [    1.742659] vdd_core: 912 <--> 1150 mV at 1137 mV   
    199. [    1.747889] vdd_core: supplied by vbat  
    200. [    1.754583] vdd3: 5000 mV   
    201. [    1.760090] vdig1: at 1800 mV   
    202. [    1.763611] vdig1: supplied by vbat  
    203. [    1.769998] vdig2: at 1800 mV   
    204. [    1.773480] vdig2: supplied by vbat  
    205. [    1.779839] vpll: at 1800 mV   
    206. [    1.783256] vpll: supplied by vbat  
    207. [    1.789576] vdac: at 1800 mV   
    208. [    1.792977] vdac: supplied by vbat  
    209. [    1.799236] vaux1: at 1800 mV   
    210. [    1.802749] vaux1: supplied by vbat  
    211. [    1.809109] vaux2: at 3300 mV   
    212. [    1.812606] vaux2: supplied by vbat  
    213. [    1.818973] vaux33: at 3300 mV   
    214. [    1.822579] vaux33: supplied by vbat  
    215. [    1.829010] vmmc: 1800 <--> 3300 mV at 3300 mV   
    216. [    1.834051] vmmc: supplied by vbat  
    217. [    1.840026] vbb: at 3000 mV   
    218. [    1.843609] vbb: supplied by vbat  
    219. [    1.848858] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz  
    220. [    1.862630] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz  
    221. [    1.972271] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6  
    222. [    1.978680] davinci_mdio 4a101000.mdio: detected phy mask ffffffde  
    223. [    1.988850] libphy: 4a101000.mdio: probed  
    224. [    1.993152] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver unknown  
    225. [    2.001513] davinci_mdio 4a101000.mdio: phy[5]: device 4a101000.mdio:05, driver unknown  
    226. [    2.011094] cpsw 4a100000.ethernet: Detected MACID = c4:ed:ba:88:b5:e4  
    227. [    2.022260] input: volume_keys@0 as /devices/volume_keys@0/input/input0  
    228. [    2.032966] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)  
    229. [    2.041988] sr_init: No PMIC hook to init smartreflex  
    230. [    2.047636] sr_init: platform driver register failed for SR  
    231. [    2.071187] lis3_reg: disabling  
    232. [    2.078305] RAMDISK: gzip image found at block 0  
    233. [    2.088654] mmc0: host does not support reading read-only switch. assuming write-enable.  
    234. [    2.114634] mmc0: new high speed SDHC card at address aaaa  
    235. [    2.124023] mmcblk0: mmc0:aaaa SL16G 14.8 GiB   
    236. [    2.145511]  mmcblk0:  
    237. [    2.264995] VFS: Mounted root (ext2 filesystem) readonly on device 1:0.  
    238. [    2.273502] devtmpfs: mounted  
    239. [    2.277355] Freeing unused kernel memory: 404K (c07ba000 - c081f000)  
    240. ----------mount all..........  
    241. ----------Starting mdev......  
    242.   
    243.   
    244. Please press Enter to activate this console.   
    245. @tq335x #ls  
    246. HOSTNAME    dev         lib         mnt         sbin        usr  
    247. bin         etc         linuxrc     proc        sys         var  
    248. boot        home        lost+found  root        tmp  

    (4)小結

     

    到目前為止,已經能夠成功啟動內核了,接下來我們會在新內核的基礎上添加tq335x板載驅動。

     

    本文在該文章制作好的rootfs基礎上,制作ramdisk。   from:http://blog.csdn.net/girlkoo/article/details/41258583RFID管理系統集成商 RFID中間件 條碼系統中間層 物聯網軟件集成
    最近免费观看高清韩国日本大全