powerpc通过NFS挂载linux内核

环境介绍:
OS:ubuntu1004 
串口工具:minicom
一、准备工作
1、内核与dtb的编译生成
cp [./arch/powerpc/config/85xx/defconfig]    .config
make uImage
./scripts/dtc/dtc -O dtb -I dts -S 0x3000 -o p2020.dtb ./arch/powerpc/boot/dts/p2020.dts   
./scripts/dtc/dtc -O dtb -I dts -S 0x3000 -o p2020.dtb ./arch/powerpc/boot/dts/p2020.dts  
mkimage -T flat_dt -C none -A ppc -n "DTS" -a 0x0C000000 -d p2020ds.dtb p2020.jud.dtb
mkimage是将dtb修改为适合uboot使用的映像文件
cp arch/powerpc/boot/uImage /tftpboot/uImage.v12 
cp p2020.jud.dtb /tftpboot/p2020.jud.dtb


2、挂载内核文件和nfs目录
vim /etc/exports
添加:192.168.1.10:/opt/ubq.ds/devkit/powerpc/e500v2/target(rw, sync, no_root_squash)


3、启动ubuntu NFS服务
/etc/init.d/nfs restart(需root权限)


二、uboot环境修改与内核启动


1、进入uboot

reboot                    //重启开发板,进入uboot环境设置
printenv                  //查看uboot环境变量


2、uboot环境设置


/****uboot启动后网卡默认关闭,需通过spi写命令向网卡2的第一个寄存器写入1来启动!!!!**/
spi_dev write 2 1 1
/*******************************设置使用的网卡**************************************/
setenv ethact eTSEC3
/******************************设置开发板的IP地址***********************************/
setenv ipaddr 192.168.1.2 
/****************************设置使用的串口和波特率*********************************/
setenv console ttyS0,115200
/****************************指定根文件系统的位置***********************************/
setenv root /dev/nfs
/******************************指定挂载的nfs目录************************************/
setenv nfsroot 192.168.1.10:/opt/ubq.ds/devkit/powerpc/e500v2/target
/********依次为开发板ip、serverip、网关、子网掩码、空、活动网卡*********************/
setenv ip 192.168.1.2:192.168.1.10:192.168.1.1:255.255.255.0::eth2
/*******************************对bootargs赋值**************************************/
setenv bootargs console=$console root=$root nfsroot=$nfsroot rw panic=1 ip=$ip
/*********************************保存设置******************************************/
saveenv




spi_dev write 2 1 1
setenv ethact eTSEC3
setenv ipaddr 192.168.1.2
setenv console ttyS0,115200
setenv root /dev/nfs
setenv nfsroot 192.168.1.10:/opt/ubq.ds/devkit/powerpc/e500v2/target
setenv ip 192.168.1.2:192.168.1.10:192.168.1.1:255.255.255.0::eth2
setenv bootargs console=$console root=$root nfsroot=$nfsroot rw panic=1 ip=$ip


3、通过nfs启动开发板


/*******内核入门地址**************设备树入口地址*************bootm引导内核启动*******/
tftp 0x20000000 uImage.pt1; tftp 0xd000000 plus.dtb.pt1;bootm 0x20000000 - 0xd000000   

你可能感兴趣的:(powerpc通过NFS挂载linux内核)