<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > S5PV210(TQ210)學(xué)習(xí)筆記——內(nèi)核移植與文件系統(tǒng)構(gòu)建

          S5PV210(TQ210)學(xué)習(xí)筆記——內(nèi)核移植與文件系統(tǒng)構(gòu)建

          作者: 時(shí)間:2016-11-28 來源:網(wǎng)絡(luò) 收藏

          在etc目錄下創(chuàng)建Inittab文件,內(nèi)容如下

          1. ::sysinit:/etc/init.d/rcS
          2. console::askfirst:-/bin/sh
          3. ::restart:/sbin/init
          4. ::ctrlaltdel:/sbin/reboot
          5. ::shutdown:/bin/umount-a-r
          6. ::shutdown:/sbin/swapoff-a

          在etc/init.d/目錄下創(chuàng)建rcS文件,內(nèi)容如下
          1. echo"----------mountall.........."
          2. mount-a
          3. echo"----------Startingmdev......"
          4. echo/sbin/mdev>/proc/sys/kernel/hotplug
          5. mdev-s
          6. /bin/hostname-F/etc/sysconfig/HOSTNAME

          為inittab和rcS文件添加可執(zhí)行權(quán)限
          1. chmoda+xinittab
          2. chmoda+xrcS

          在etc目錄下創(chuàng)建fstab文件,內(nèi)容如下
          1. #evicemount-pointtypeoptiondumpfsckorder
          2. proc/procprocdefaults00
          3. none/tmpramfsdefaults00
          4. mdev/devramfsdefaults00
          5. sysfs/syssysfsdefaults00

          在etc目錄下創(chuàng)建profile文件,內(nèi)容如下
          1. PATH=/bin:/sbin:/usr/bin:/usr/sbin
          2. exportPATH
          3. #sethostname
          4. HOSTNAME=/bin/hostname
          5. exportHOSTNAME
          6. #SetPS1
          7. PS1=[u@hW]$
          8. exportPS1

          拷貝主機(jī)/etc目錄下的passwd和group文件到etc目錄下。

          (5) 設(shè)置HOSTNAME文件

          在etc/sysconfig目錄下創(chuàng)建HOSTNAME文件,在文件中寫入主機(jī)名,我這里寫的是bruce。

          (6) 安裝內(nèi)核modules

          進(jìn)入內(nèi)核源碼目錄,執(zhí)行

          1. makemodules

          待編譯完成后安裝modules,執(zhí)行指令
          1. makemodules_installINSTALL_MOD_PATH=/nfsroot/rootfs

          到這,根文件系統(tǒng)就構(gòu)建完成了.

          三 設(shè)置uboot啟動(dòng)參數(shù)

          我的nfs根目錄為/nfsroot,我的根文件系統(tǒng)目錄是在該目錄之下的,即/nfsroot/rootfs目錄,故uboot啟動(dòng)參數(shù)設(shè)置如下

          1. noinitrdconsole=ttySAC0root=<主機(jī)IP>:/nfsroot/rootfsrwip=<開發(fā)板IP>:<主機(jī)IP>:<網(wǎng)關(guān)>:<子網(wǎng)掩碼>::eth0:offinit=/linuxrc

          需要注意的是,所有的冒號(hào)":"都不可省略。

          四 網(wǎng)卡驅(qū)動(dòng)移植(DM9000)

          選擇網(wǎng)卡移植是因?yàn)榫W(wǎng)卡驅(qū)動(dòng)相對(duì)較為簡單,對(duì)于DM9000就更加簡單了,因?yàn)閮?nèi)核本身提供了DM9000的驅(qū)動(dòng)程序,但是沒有針對(duì)開發(fā)板進(jìn)行管教配置,因此,我們配置下開發(fā)板相關(guān)的東西即可完成網(wǎng)卡驅(qū)動(dòng)的移植。打開arch/arm/mach-s5pv210/mach-smdkv210.c文件,并作以下修改:

          (1) 修改smdkv210_dm9000_resources定義如下

          1. staticstructresourcesmdkv210_dm9000_resources[]={
          2. [0]={
          3. .start=0x88000000,
          4. .end=0x88000000+3,
          5. .flags=IORESOURCE_MEM,
          6. },
          7. [1]={
          8. .start=0x88000000+4,
          9. .end=0x88000000+4+3,
          10. .flags=IORESOURCE_MEM,
          11. },
          12. [2]={
          13. .start=IRQ_EINT(10),
          14. .end=IRQ_EINT(10),
          15. .flags=IORESOURCE_IRQ|IORESOURCE_IRQ_HIGHLEVEL,
          16. }
          17. };

          (2) 修改smdkv210_dm9000_init函數(shù)如下
          1. staticvoid__initsmdkv210_dm9000_init(void)
          2. {
          3. unsignedlong*srom_bw=ioremap(0xE8000000,4);
          4. unsignedlong*srom_bc1=ioremap(0xE8000004,4);
          5. *srom_bc1=((0<<28)|(0<<24)|(5<<16)|(0<<12)|(0<<8)|(0<<4)|(0<<0));
          6. *srom_bw&=~(0xf<<4);
          7. *srom_bw|=(1<<4)|(1<<5);
          8. gpio_request(S5PV210_MP01(1),"nCS1");
          9. s3c_gpio_cfgpin(S5PV210_MP01(1),S3C_GPIO_SFN(2));
          10. gpio_free(S5PV210_MP01(1));
          11. iounmap(srom_bw);
          12. iounmap(srom_bc1);
          13. }

          這樣,就完成了DM9000網(wǎng)卡驅(qū)動(dòng)的移植,其實(shí)這樣修改是有邏輯的,根據(jù)TQ210的原理圖可知DM9000連接的片選時(shí)nCS1,也就是網(wǎng)卡是接在來ROM控制器的BANK1上。

          根據(jù)S5PV210的內(nèi)存映射表可以看出,SROMC的BANK1地址空間為0x88000000~0x8FFFFFFF,故當(dāng)CPU尋址該范圍內(nèi)的地址空間時(shí)才會(huì)使能片選nCS1。所以,我們采用的是0x88000000地址。



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();